|Day 6 Updates||I don't really have much to say today so here are just a few things I've been working on||/assets/pngs/calendar.png||2020-05-03T01:57:03-04:00||true||[Technology]||[Zettelkasten Doom Emacs Emacs NixNet 100 Days To Offload]|
I haven't been able to come up with a specific topic for today so this is just a kind of generic update about me.
In my previous post about Vim, I briefly mentioned being inspired to create a Zettelkasten by Daryl Sun in his fourth 100 Days To Offload post. A Zettelkasten is a personal knowledge management tool that allows one to quickly retrieve useful information about a subject, relearn forgotten concepts, and discover connections between those concepts to form entirely new ideas. There are different processes recommended by different people but I think it's a very personal choice and depends on what your workflow will look like. Mine will be as follows.
- Take very concise notes on something I learned in a physical notebook
- When I'm able, go through those notes and add them to my digital Zettelkasten, expanding them a little and fleshing the thought out more
The last step is the most important as this is the one where you sit down and think about what you're adding and try to draw connections between it and what you already know. The goal is not to make the longest and most complete notes in the world but to add value to each concise thought by linking it with others and build a web for you to explore later. You might not see immediate benefits but a mature Zettelkasten with hundreds of entries will constantly surprise you as you tumble into your own store of knowledge and rediscover things. That surprise is actually one of the greatest benefits to this kind of knowledge management system; when something is surprising, we tend to remember it better.
A friend of mine convinced my to try Doom Emacs and, so far, I am very impressed. Emacs itself is very powerful but, from what I can tell, this configuration adds a lot of value. The main one being Vim keybindings 😉 I'm looking forward to learning org-mode and seeing what it can do for my productivity. As a text editor and programming tool, I plan to stick with Neovim on desktop/laptop, Vim on Debian-based systems, vi wherever else.
Today, I fleshed out some of my thoughts on reprovisioning all of my over the summer. I'm going to have Ansible or Salt build and deploy LXC containers to a baremetal server from Hetzner running a very minimal Alpine Linux installation. Whatever setup I have for those will of course be available on Gitea. From there, my local NAS will use something like borgmatic to back up files and databases from all of my servers and LXD to create container snapshots1. All of that will be mirrored to BackBlaze likely using their B2 model as paying per GB per month is generally the most reliable option. Under one of the others, there's always the possibility that I might upload more than they think is reasonable and start limiting me in some way.
Short-term, I'm going to consolidate some of my servers to a single baremetal machine from Hetzner. Long-term, I'm going to look into building and racking my own servers in a datacenter in Germany, likely one of Hetzner's. This comes with a plethora of benefits but a pretty major detriment: the up-front cost will be absolutely massive. Building a rack server worth putting in a datacenter will be incredibly expensive at the start. Following that, all I have to pay is a monthly fee for however much space it uses in the rack and it won't be too much. Before any of that is even considered, I'm going to be spending a lot of time discussing things with my father; he did a lot of racking before he got his current sysadmin job and has a ton of advice to give, from using VoIP to powercycle the server to what networking gear to look at and how to organise everything within the rack.
I have a lot of really big plans.
This one isn't really necessary as building the containers with Ansible/Salt is automated and it's a simple process to rebuild them. Snapshots might just take less time to redeploy should something go wrong. ↩︎