GeekSocket Plug in and be Geekified

Building RepRap 3D printer

My younger brother goes by the name HemRobotics almost everywhere. I have been working with him on a 3D printer build. We completed the first build of our RepRap machine based on Prusa i3 printer. I will be talking about our experience and learnings from this project. Why did we build a 3D printer? It’s a hacker’s dream to have a 3D printer on their desk. I had seen 3D printers on television when I was in school.

Removing Comments and Disqus

After moving away from Google Fonts, Google Analytics, I also removed Disqus comments from my website. Instead of implementing an alternative commenting system, I decided to remove it altogether. I will be covering why I did it, and how I’m showing the old comments from Disqus statically on the website. Why am I removing the comments? This was not a very easy decision to take. But finally I took the decision to remove the commenting system, and here are the reasons:

Self-hosting Plausible Analytics

In the efforts of making my website privacy-friendly, I moved away from Google Analytics. This was the next step after self-hosting fonts for the website. I have been self-hosting Plausible Analytics since last 3 months. I will be covering why I did it, how I’m hosting it on my VPS, the email setup, and more. Why do I need analytics? Before we get to any further details, why do I even want analytics in the first place?

Writing Emacs Lisp to convert ICS to Org mode list

A couple of months back David O’Toole (dto) taught me basics of Emacs Lisp (Elisp). These were things like lists, symbols, functions, debugging and a few more things. After the session I was consciously observing my workflows, so that I can make improvements to them by writing Elisp. We wrote one such fuction during the session, but I had not written anything apart from that. Recently, I wrote an Elisp function to convert event entries from an ICS (iCalendar file) to Org mode list.

How to get notifications from

I maintain a Copr for Emacs pretest builds. I wanted to have a mechanism to get notified when a new pretest release is available. That way I can keep the pretest RPMs on Copr up-to-date. In this post, I will be talking about the Anitya project, which is hosted at and how to get an email notification, when a new release of an upstream project is available. What is release-monitoring.

Hosting fonts locally on the website

Privacy matters, and everyone should care about it. I wanted to get rid of the few things from my website which don’t respect user’s privacy, which try to track users. I didn’t want to get in a trap of all or nothing, and just wanted to start making the changes. So, I decided to tackle an easy problem first. That is to stop using and host the fonts local to the website server (self-host).

How to setup Emacs LSP Mode for Go

I use GNU Emacs as my editor, and I use it to write Go code as well. In this blog post I will be talking about basic setup of LSP Mode and gopls to work with Go code. What is LSP Mode Before we get to that, What is LSP? The Language Server Protocol (LSP) defines the protocol used between an editor or IDE and a language server that provides language features like auto complete, go to definition, find all references etc.

Learning Dvorak keyboard layout

I have been using Dvorak keyboard layout since the last 4 months now. In this post I will be covering things like why I switched to it, what issues I faced while learning it and more. Why I switched to Dvorak I learned touch typing during dgplug summer training 2017. I was able to type all the characters and basic punctuation marks. I did not cover the number line at that time.

EmacsConf 2020

EmacsConf 2020 happened last to last weekend (28th & 29th November). Same as last year, the conference was online. With more people helping with organizing the conference, it was an amazing and well executed conference. EmacsConf is the conference about the joy of Emacs, Emacs Lisp, and memorizing key sequences. — From EmacsConf website. This year it was a two days conference with 37 talks in total. We had almost 1.

How to use Hugo Modules

I use Hugo for this site. I migrated to Hugo from WordPress a year ago. Hugo is a static site generator written in Go. Hugo project has frequent releases, so I usually update the version once in a few months. This involves reading all the release notes and making any changes to the theme if required. The theme changes are required rarely though. While going through the release notes of v0.