My Self-Hosting Journey
Self-hosting your own services has been catching up in popularity: the selfhosted subreddit has over 180K members as of 21/5/22, and the number of self-hosted solutions has been growing exponentially (see a huge list here).
Self-hosting your own services has been catching up in popularity: the selfhosted subreddit has over 180K members as of 21/5/22, and the number of self-hosted solutions has been growing exponentially (see a huge list here).
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:
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.
Service Workers are a great way to add offline functionality to your app, as well as speed up subsequent page loads (especially with the app shell model).
I recently encountered many issues while debugging, and to save myself and others the hassle, here are some of the best practices I recommend when debugging service workers.
One of the experiences I've had which cemented my belief that money, or that attempting to purchase happiness cannot in itself bring happiness, was when I picked up the Dvorak1 keyboard layout. At the time, I was in the military doing clerical work, and there were hundreds of pages of documents that we were supposed to transcribe into Microsoft Word documents. The task itself was extremely monotonous and I was thinking of ways to improve it further. Once I picked up Dvorak, however, my outlook on the work changed. The task became fun, as I found myself slowly beginning to pick up the layout, and learn touch typing (something I had previously never attempted).
Man can indeed do what he wants, but he cannot will what he wants.
Arthur Schopenhauer
It is very likely that the outcome of most things in the world, including the desires1 and mental states2 of ourselves3 and others, are already predetermined4 by events in the distant past. A criminal or good Samaritan, for example, can be viewed as a person whose antecedent moral, social and genetic factors have resulted in them being bound, so to speak, to have either the desire to help others or a lack of self control resulting in the criminal act. This is not to say that they should not be punished or praised, for we know that such interventions can be beneficial. Rather, we should view their acts with the same amount of significance as we would to our expectations of a faulty program running smoothly or a mouse outrunning a cheetah, because we know that the outcome could not have been otherwise, given the antecedent factors.
My computing setup is designed to maximize the state of flow, by reducing distractions and other associated cognitive overheads.
Recently I was trying to set up dual-booting on my laptop, with Fedora 35 and Windows 11.
I followed best practices, installing Windows before Fedora. However, on rebooting Fedora, the laptop booted straight away to Windows 11 without prompting.
The Secure Shell Protocol (SSH) allows one to remotely access a terminal interface on a remote machine. In addition, it allows for capabilities such as port tunneling1, file transfers and screen forwarding.
The main reasons for setting up SSH access on my machine were to allow me to:
localhost
)When working remotely with a laptop, sometimes we might want access to more CPU power, RAM or a GPU. VSCode supports accessing a remote machine, and if Docker is installed on the remote machine, you can even connect to remote development containers. This approach tremendously saves battery life since computation is done on the remote server.