My Windows Environment Setup
I have only one Windows device, the Surface Go. I work on it occasionally, especially on short trips. I prefer Surface Go because of handwriting. I have a simple setup to meet my work requirements.
I have only one Windows device, the Surface Go. I work on it occasionally, especially on short trips. I prefer Surface Go because of handwriting. I have a simple setup to meet my work requirements.
I use file system to manage my knowledge base. The repository has a well defined directory structure. I have a bunch of scripts to help me creating these directories on the laptop. But in iOS, I have to create them manually. Recently, I have found out a way to work around it via Working Copy.
Pin is an obscure type in Rust because of the naming and indirect concepts. The first indirect concept is pointer. Pin<X> does not guarantee that X will not move. If X is a pointer which target type is T, Pin<X> guarantees that T will not move. The second is “not move”. It really means that the only way to get the mut reference to T is via unsafe interface. The last is the Unpin mark trait. Pin forbids safe interface to get the mut reference to T only when T is !Unpin. In simple words, Pin is a pointer wrapper. When a pointer is trapped inside Pin, and the pointee type is !Unpin, there’s no safe way to get a mut reference to the pointee.
I have created a family group using the Apple ID A, and the account B is a member. However, I can’t download apps purchased by A in the device logged in by B. Today, I finally find out the cause. The Purchase Sharing setting in account B is incorrect, which is by accident set to share as A and I don’t know why.
One of my favorite features of Inoreader is saving the article to external services, such as Evernote, OneDrive or Google Drive. I can archive the articles I liked for future references.
When I first read Stjepan’s article Blocking inside async code, I never though I will met the problem mentioned in the post.
Excel is a full featured vector graphics app. It has bundled many shapes and styles, and even supports anchoring connectors to the shapes. All these features make Excel also a good diagram maker. One of my favorite tips is grid snapping, it can save a lot of time to align shapes. I also recommend resizing the grid as small squares.
This article is an analysis of the network event loops based on bitcoin core v0.19.0. Bitcoin starts two threads to handle network messages, and each thread runs its own event loop.
I prefer using Vim in a terminal. I can switch to the shell with Ctrl-Z and back with fg. However it is hard to integrate a terminal command with other GUI tools, such as editing a file in Vim from Finder.
I prefer reading my mails in the Gmail web client directly. I rarely send new mails or replies. But when I do, I want to use PGP to encrypt or sign the mail. I have tried two extensions to use PGP in Gmail, FlowCrypt and Mailvelope.