Skip to content

Programming

Music Management with Navidrome, DSub and Beets

Previously on Windows, I was using MediaMonkey to manage my music. It offered wireless syncing (over LAN) for the associated Android client, and worked well.

When I switched to Linux, I had to look for a replacement. I wanted a solution that was free and open-source, could be self-hosted on a server, and supported features such as bookmarks, playlists and transcoding (for clients not supporting certain formats).

Self Hosted VPN with Tailscale

Having your own VPN can be useful for bypassing geo-restrictions and censorship, as your IP address is that of the exit node. Your traffic is also encrypted and this protects you against sniffing attacks when using public WiFi.

However most VPN services are paid. So if you have a physical server/VPS running somewhere, why not use that?

Tailscale is an awesome open-source VPN service which lets you create a secure peer-to-peer network between your devices. It's built on the open-source Wireguard protocol which is faster than the IPsec and OpenVPN protocols.

Android VM in a Browser (via Apache Guacamole)

Running an Android VM in a web browser lets you run Android applications from any computer. This lets you test out apps, or even suspicious programs without compromising your actual device.

The setup:

Note-Taking

Few of us could live life without jotting down our thoughts somewhere. Throughout the years we have developed some sort of note-taking system, either cobbled together slowly by ourselves, or something off the shelf.

I use electronic notes primarily as they are more accessible compared to paper notes and can be backed up easily.

Previously I used a Word document synced on Google Drive. However, this came with several limitations:

Artificial Intelligence, Language Models and Understanding

Emerson AI, a GPT-3 based chatbot
Emerson AI, a GPT-3 based chatbot

Update: I discuss more on the measure of intelligence in this post.

Every decade, huge advancements are being made in the field of artificial intelligence, and each time we are amazed. In the 1960s we had ELIZA, a convincing human-like chatbot. In the 1980s, the world watched as Deep Blue defeated Garry Kasparov for the first time. In the 2010s, the resurgence of deep learning completely transformed prior approaches in nearly all domains, from images and video, to text and speech.