A practical guide to get started with Pass

1. Introduction

In my recent endeavour to upgrade my digital security, I started using Pass, the command-line based password manager for my online accounts. While there were a few online guides that I could follow to get started with Pass, I did feel a need of a comprehensive guide for new users of Pass. In my attempt to fill the gap, I will try to touch upon various aspects that one needs to be mindful of to use Pass in the most secure and optimal way.

[Read more]

Understanding Kotlin Covariance and Contravariance

1. Introduction

To someone coming from the Java world to the world of Kotlin, the concepts of Covariance and Contravariance can be somewhat overwhelming to grab at first. But they don’t have to be once you start understanding the basic cadence of it. This article is going to be a step by step depiction of how I have come to understand these two topics.

2. Let’s create some classes!

First let’s create a small class hierarchy that we can use to understand these concepts. Paper is the parent class of the Regular paper and the Premium paper.

[Read more]

Upgrading to Debian 11 Bullseye

Introduction

Although Debian 11 codenamed Bullseye was released almost 7 months back on 14th August, 2021, it was only in January, 2022 that I upgraded all my computers running Debian 10 to Debian 11. Admittedly a little late to the party, I like to take a cautious approach to upgrading my systems, which is not very difficult to predict given my Linux distribution of choice! In this post, I am going to share my experience and the steps I used while doing the actual upgrade.

[Read more]

GIMP - Crop to the edges of a document and change Perspective

Introduction

Since I don’t have a scanner at home, if I need to quickly share a soft copy of a physical document online, usually I take a picture of the document from my mobile phone and share. But the problem with pictures is that the sides of the document do not appear parallel in the image. I used to use Google Photos to crop an image to the edges of the document so that it appears somewhat like a scanned document and not an obvious crappy picture taken from a mobile phone camera.

[Read more]

Easily format markdown tables in Vim

Introduction

Creating markdown tables in Vim is not very intuitive. Out of the box Vim does not have the capability of formatting markdown tables. And manually keeping them formatted is no less than a tedious job. For reasons like these, I have for years avoided using tables in markdown. But a good thing about Vim is that it’s very easy to customize it and add new functionalities. Recently I spent some time to make the task of creating and keeping markdown tables formatted a little easier in Vim.

[Read more]