Z Space Blog

your source for Game Z

Posts filed under Software. Subscribe?

Page 2 of 3

Refactoring My File Hierarchy

When I returned to mkbak1 in order to give it better options for custom backup naming, automatic date tagging, preservation of permissions, etc., I noticed that I was writing complex and tricky rsync filter files. I ran with this for a while -- and still have them as I write this -- but the problem stewed in my mind. Something bothered me about the organization of the files under my $HOME. Eventually, I felt there was a way for me to shorten my rsync filter files and reduce the stress I felt about my files. I just needed to figure out what the core problem was. To answer that, we need to understand what hierarchy's purpose is, or what its use introduces to your data.

Read more...

Zettelwhat?

I checked out the Zettelkasten method, which appears to be German for something like a box of (index) cards.

The website for the method appears to be a marketing site, almost. It's not simply and plainly spelled out for you what the method really is, and it lacks clear, real-world steps and examples to get the most out of the method. I dug a little and finally found the gist of it, being:

  • Write a note on a card for a single topic
  • Give it a permanent ID
  • Link to this note from other notes, via this ID
  • Maintain links via a master link list
  • Use the link lists to form associations between knowledge
  • (Multiple link lists may be used to map your knowledge in different ways)

The grand goal is to have a well of knowledge that you can, eventually, begin to interact with and explore the limits of your own documented knowledge, which I think is an interesting distinction to make. One of the reasons we write notes is to externalize information in a form we can recall later, to offset the cognitive load of short-term memory. Then we only need to remember to come back to our note(s) to be reminded of what we already know.

Read more...

Disable DNS over HTTPS in Firefox

Mozilla recently changed Firefox's default behavior so that all United States users are using technology called DNS-over-HTTPS, which stuffs your DNS queries into an HTTPS request, which then spits back the IP to connect to. On its surface it's supposed to be "more secure", but the default DoH provider is Cloudflare. This should be alarming to anyone who considers centralization a threat. The effect of this is that all Firefox DNS traffic will be routed through Cloudflare, creating a funnel of information to a single provider.

Cloudflare uses Google captchas and other analytics. Mozilla has also been gathering "anonymous browsing data" through their Studies platform. The only real reason to gather this data is to sell it; very little of this data is useful for the Studies program, and using hot/cold or A/B testing for determining features is poor software design philosophy. As such, I recommend disabling DNS over HTTPS, or running your own Trusted Recursive Resolver, if you're going to stick with Firefox.

Read more...

Easy diffing with Vim

Vim has good support for showing the differences between two (or three) files with either the vimdiff command or setting up a diff session manually. This often requires opening the files in their own window panes, then using :diffthis in all the relevant files. If you're in the middle of an editing session, stopping to set up this diff session can cause you to lose focus. I wrote a function in my vimrc that automates this process, so the user can focus on making decisions instead of building their UI or some other flow-breaking process.

Read more...

Handcrafting an SVG Logo

If you've spent any time viewing diagrams on Wikipedia, you'll see notices on some images that mention that the image was (re)written by hand to reduce its size. Curious, I wanted to build something in Inkscape, then rebuild it by hand to see the difference. The old logo wasn't really working out any more, so it was a great opportunity to revisit the design and learn (yet) another markup language.

Read more...

Page 2 of 3