Foreword On a broad level, some complex social problems like trust issues, misinformation, privacy, market manipulation, inclusivity, etc. have no good technical solutions. And that is for a good reason, the public does not work like idealized models in technical standards, and one decision can easily make things much worse due to the effect of widespread bias of how the public adopt or uses any…
Introduction TL;DR: With a single Ryzen 9 7950X, I pushed ~11.5k valid proofs/sec (~0.68–0.70M in 60s) using ~50% CPU into Anubis at its highest difficulty with Anubis challenge verification choking on mutex-wakeup thrashing-not ideal when Anubis also acts as a reverse-proxy that in real deployments have to forward all traffic on top of that. Anubis running on the same machine in browser using…
The evolution of Analytics The line between sites collecting aggregated metrics and active spying by session recording and stitching together the “journey” of a particular user’s every click and scroll from impression to conversion is becoming increasingly blurred. The latter form of data collection is extremely invasive as they collect granular, non-aggregated, and almost never…
Before all, there is no “outlandish” industry practice I am trying to expose here, just my own observations and my own thoughts on why I have an issue with this, and why I posted this on my blog to help others exercise their discretion. Commentary Someone referred me to try out a cryptocurrency exchange (I have absolutely zero experience with cryptocurrency as an disclosure), and I…
Introduction This is a summary of my own experience and experiments in improving my Misskey instance’s security and some best practices I have been planning on working on. I have split it into two sections: code hardening and system hardening. This is a preview of my own instance configuration and I will go back to why exactly these features were implemented in the later sections. Misskey My…
IMPORTANT: If the title isn’t triggering enough, it should go without saying that this is a cool trick but terrible idea xD The code is published along with the typed-sexp library. Introduction Imagine this frustration: You are not on your personal support computer, maybe a compute cluster or a friend is asking you ‘why doesn’t this work?’. You need a little native code to…
I’m not a type theorist, just someone who has been programming in various type systems for a while and wanted to write down some of the things I’ve learned. If you see any mistakes, please let me know! Introduction Type reasoning is an important part of generic programming. It dictates what you can pass into and get out of a generic procedure. In this post, we will discuss the laws of…
I gave it some thought and decided to write a blog about why I prefer Rust over C and C++. Background Wedson Almeida Filho, a software engineer working on the Rust for Linux project, recently announced that he would be stepping down from the project, due to persistent “non-technical” issues mainly coming from a subset of the Linux kernel community who are not happy with the use of Rust…
Introduction When you write your first Haskell program, immediately you would come across the type IO a , called “the IO monad”. 1 2 main :: IO () main = putStrLn "Hello, World!" If you go lookup what the definition of a Monad is, you would see it is a subtype of Applicative , and Applicative is a subtype of Functor . Very overwhelming, right? Let’s start with a simple definition…
Introduction Rust functions contain more information than C++ functions. There are a total of 5 kinds of function-like things in Rust: Plain functions ( fn ) Function pointers ( *const fn , *mut fn ) Function traits: Fn FnMut FnOnce Let’s break down each of these in C++ terms. *All C++ code is compiled with g++ -Wall -Wextra -pedantic -ggdb -std=c++17 . Definitions Plain Functions Plain…
Introduction I have been gradually learning Haskell for the past few months and I have been fascinated by how different it is from the imperative languages I am used to. Here I document an experiment (which is based on one of my homework problems, I just thought it is a great example) that I did where we delve into comparing the presentation and the performance of code on a spectrum from…
Registering a Discord Bot Creating the Application Go to the Discord Developer Portal and create a new application. Give it a name (and maybe a pfp). Creating the Bot and Getting the Token Then, go to the bot tab and create a bot. Give it a name (and maybe a pfp). Then hit “Reset Token” to get a token for authenticating your bot, note this down to later use in your code. Then in…
I found myself in a situation where I have temporary emergencies that I would like my trusted friends to be have audited access to a subset of my accounts with a prescribed short wait period so I could still stay on top of my affairs. Objectives I want to build a system that has the following properties: Stores my account credentials securely with API for syncing with Keepass2. Identity or Policy…
Well… As the title suggests I got POED’ed earlier this month… This is the second serious crisis I got myself into that led to a visit to the ER and my first admission… Backstory Retrospectively I could really see how similar this crisis is to last year’s. I get hypomanic and start to hyperfocus on things I suddenly grow interest in and gradually fall behind on my…
My comments on a review published in the 2020 by Hilton & Lundberg as a transgender woman, marathon & cross-country runner pre-transition, and student in the biology field. The author took a stance supporting the restriction of transgender individuals from attending sports based on non-direct evidence of insufficiency of androgen suppression therapy in leveling the playfield in women’s…
My PyMOLRC.pml file. stereoize Enable anaglyph stereo. Change background to grey to prevent color to be washed away. mkactive Select amono acids within 3 A of ligand. axis Draw a 3d axis on the desired object. label_ca Label number and type of selected amino acids on C.a. centroid Calculate centroid for selected atoms.
Recently I’ve been having increasingly anxious that I feel I have been at a bottleneck in my language capabilities for quite a long time. Reflecting over my past 3 years of attempt, I feel like it would be good to put a plan into words to tell myself that it’s normal to have doubts on whether I am improving. I hope it would also serve as a reference for my readers who are…