LINUX SHELL KEY BINDINGS

By default, bash (and zsh & fish too) is configured with line editing commands similar to those of Emacs. It can also be switched to a vi-style interface.

MAKING THE CASE FOR GETTING VACCINATED

I was recently talking to my parents about the dire COVID-19 situation in India. As the general public there has increasingly become lax about wearing masks and maintaining social distancing, infection and death rates are surging. Hospitals in many areas have run out of beds and treatment supplies. In order to claw back some control over the spread of the disease, the authorities may have no choice but to declare complete lockdowns that would be debilitating to the economy and society.

REFLECTIONS ON A YEAR OF CONSULTING

I last posted an entry in this blog more than a year ago. There have been quite a few changes in my life during that time. From a professional perspective, the most significant one was that I switched jobs.

BALANCING EXPRESSIVENESS AND BREVITY

I really enjoy refactoring code. However, I rarely get that opportunity at my job because I primarily work on a large Java application that is mature and well maintained.

BUILDING A PUBLIC PROFILE AS A PROGRAMMER

A few months ago, I watched the documentary “Get Involved!” by Rob Conery and Scott Hanselman. It is available as a free video course from Pluralsight. In the feature, Rob and Scott provide advice on becoming a “social programmer” in order to enhance one’s career prospects.

LEARNING ABOUT SOFTWARE SECURITY

Before I started my journey to become a Software Engineer, I did not think about software security much beyond installing a good anti-malware product on individual computers and configuring the wireless network with the most advanced security options. As an ordinary user, I just had to use strong and unique passwords for each of my online accounts.

THE DIFFERENCE BETWEEN THE HTTP METHODS PUT AND POST

It seems that almost everyone is using RESTful APIs everywhere. A very common question that comes up is which of the two HTTP methods PUT and POST should be used in a particular situation. In this post, I will describe my understanding of the difference between the two methods.

A NUANCE OF LAMBDA FUNCTIONS IN JAVA 8

As I was trying to solve part 2 of the Day 6 problem in the Advent of Code 2015 challenge using Java 8, I ran into a curious problem. I had defined functions as follows for the various operations.

WHY SHOULD DEVELOPERS WRITE UNIT TESTS?

Even though nowadays it is generally expected that developers would always write unit tests, I have run into quite a few of them who loathe doing that. In fact if it weren’t for test coverage gates in the code check-in process, they would completely skip that step and keep coding new features instead. But forcing developers to meet a certain testing metric does not always produce the desired results. You can end up with a bunch of useless test cases that were written specifically to meet the minimum required coverage threshold.