On Achievements

I have a somewhat indifferent approach towards achievements(mine and others’): with tendencies to gauge the personalities based on how their conversations flow and in terms of the quality of the questions and problems they are working on.

Recently, I’ve began to grasp why they actually might be a necessary construct:

  • when leading larger societal initiatives, simply claiming ethical superiority doesn’t pan out well (and it shouldn’t) with the need to gain the trust of masses.
  • you need displays of competence for people to will their incentives to align with yours somehow (necessary for collective progress).
  • claiming dignity is simply not enough and that is a good thing.
  • of course, this opens up a whole bunch of societal games and dynamics that are too complicated for me to completely break down right now.

If you do wish to make a change, you will someday have to take the helm of larger groups of humans. This is when being competent and having proofs for it becomes indispensible.

IKN0X223B: LAUNCHING THE ICBM

check out what an IKN0x means here

ICBM, in here, is an abbreviation for the “Intellectual Cluster Bootstrap Methodology”.

I’ve only recently began enjoying the joys of maintaining scaffolds in multiple intellectual domains.

Given you maintain good generic fundamentals of various root domains, you get to enjoy grasping new specific ones in an expedited manner.

These days when I have to assimilate a previously unseen domain, a weekend long pragmatic study marathon yields results comparable to what would’ve required at least a week, before I deliberately chose to set out on this path.

Contextual .gitignores

A while ago, I had the strong desire to partition some of my professional work logs into mutually exclusive git repositories: with Blacklists and Whitelists flipped.

I was aware that the .gitignore could ignore stuff; today I found out that I can also whitelist stuff via that.

checkout 1 this stackoverflow question

So if the first .gitignore looks like

asdf-pattern 
more-asdf
some-absolute-asdf
dir-asdf/

the second one would look like:

# blacklist everything first
*

# unignore the directories to capture nested existences
!*/

# then your usual unignores
!asdf-pattern
!more-asdf
!some-absoluete-asdf
!dir-asdf/

What I wonder now is if git would allow for a branch-contextual .gitignore (named with certain protocols) so that I don’t have to maintain two different repositories altogether.

Campfire Talks

I’ve lately taken to watching Alan Kay talks during my lunches and dinners.



The idea of this being a campfire talk near the end caught me offguard and is something I would like to use in the future.

I've given up on Monitors

I recently have moved on from using monitors and am working (professional and writing endeavours) only via a 13 inch laptop. It is definitely a different workflow than what I’m used to.

It has been around 10 days I’ve been doing this and here are some observations:

  • I’m able to focus better as I’m forced to enlarge my context maintaining capabilities; for I don’t have the luxury to look back and forth with just my eye movements.
  • I can work from anywhere. I change places and posture every 1.5 hours, 5 times a day.
  • Given I move between a couple of meets during the day, I don’t have to adjust to differing window management mannerisms as I only ever work on the same screen now.
  • I work in at most two splits now compared to the 5+ previously: it is all simpler and the monitor has started to seem like a vanity rather than essential accessory.
  • I don’t have to switch keyboards between my desk and meets: I don’t mess enough as much now.
  • I can start looking down upon people that are bound to monitors, thinking that they’re spoiled or aren’t minimal enough.
  • I’ve started preaching about the spartan-ish effects of working only via your laptop
  • I spend more time on screen, on my bed: consequently I’m writing more.

I definitely do miss reading papers and books on a larger vertically oriented screen but I’m going to stick to this for a while.

on Naming your Projects

As an aspiring polymath, you’ll soon run out of books and courses if you really wish to explore the intersection of multiple domains based on your current intellectual requirements.

That is a great problem to have and the solution is to transition into the mindset of chunking your learnings into projects rather than subjects.

I’ll recommend maintaining a sense of pragmatism (incentivize application of what you’re learning in the foreseeable future (with non-pedagogical intent)) and haste during your initial iterations. Perfection (The will to tend towards it, rather..) can follow once the prototype is principally sound.

Building (and Maintaining) a <desc. follows> Being

One cannot rely on objective standardized tests to gauge how good one is at the act of being.

They’re good to indicate a specific aspect of where you wish to affirm your competence in, but have exhibit numerous fallacies when you’re trying to optimize a probabilistic, unstructured, instinct based behaviour over longer spans of durations, ranging from weeks to decades.

Such a gauge is probably only exhaustively captured in how the complexities of life unroll around you based on your behaviours.

Personalized Science

I like studying and exploring new things in the spirit of science. The science that happens today in institutions is more than just science and involves a lot of ancillary efforts directed towards the formalized production of research.

I respect formalized scientific efforts but feel like humanity as whole is losing out on the idea of having personalized problem statements to work on without worrying about applications, citations or what the next big thing is going to be.

Stuck on an Island

There’s this saying :

If you’re stuck on an island and have the opportunity to build all of the software landscape again, the programming language you should choose is C. But the first thing you should write is a lisp interpreter.

I’m going to do that with Go.

As for the saying, I’ve heavily paraphrased (aka butchered) that and don’t quite recall the source so do excuse me for that.

A CLI Timer to save your soul

This is how I time my workblocks these days…

Prerequisites

Functions

single_beep() {
( \speaker-test --frequency $1 --test sine )&
pid=$!
\sleep  0.${2}s
\kill -9 $pid
}

morse(){
for i in {1..3};
do
        single_beep 400 $1
        \sleep 0.${2}s
done
}

sos() {
    morse 200 500
    morse 400 500
    morse 200 500
}

timer() {
    \sleep $1 && sos &
}

Usage

The above can be sourced in your shell rc.
I store it in a .bash_funcs where I have all my functions and source them in the end of my rc as source ~/.bash_funcs.

Building a Racket Based Operating System

EDIT : 0x22D2 : Fri Sep 27 03:51:30 PM IST 2024

  • I’m thinking I’ll proceed in common lisp
  • do read on for amusement though

As of 0x22CE (Mon Sep 23 06:48:40 AM IST 2024), These are the operating systems I’ve used:

  • Open Suse TumbleWeed
  • Fedora, CentOs, Rocky
  • Debian, Ubuntu, Kali
  • Arch
  • Windows XP,Vista,7,10,11

I recently moved away from Fedora 40 to Tumbleweed (I deleted some core python libraries that are essential for yum and dnf (I know, I’m an idiot))…

Temporal Specialization

If you’re new to the concept of polymathy (I personally ventured into the idea when I read Da Vinci’s biography by Walter Isaacson), a lot of counter-intuitive traps await you when trying to build competence in multiple areas.

You don’t need to be a generalist at all times during your journey into polymathy. I mentally grasped this fairly recently that you don’t need to shun specializing for smaller durations. Something like a day is obvious as a candidate but, in the past, I would shy away from even periods of a month to actually focus on a singular thing. I’m fairly comfortable doing that for upto three months now but would recommend touching a large span of domains over the span of six months for you don’t want to start losing out on the humility that interdisciplinary pursuits enforce on you.

Doom Emacs config'd for Python

Alter your doom block in init.el:

(doom! 
    ...
    :lang 
    (python +lsp +pyright +conda)
    ...)

I recommend pyright, is snappier than pyls..

you’ll also need lsp enabled in your tools, I also have +peek

(doom! 
    ...
    :tools
    (lsp +peek)
    ...)

for more info, hit <space> h d m lsp<CR>

Alter your config.el (I use miniforge to get mamba and conda):

                                        ; Conda
(use-package! conda
  :config
  (setq conda-anaconda-home (expand-file-name  "~/mambaforge"))
  (conda-env-initialize-interactive-shells)
  (conda-env-initialize-eshell)
  (conda-env-autoactivate-mode t)
  (add-hook 'find-file-hook (lambda () (when (bound-and-true-p conda-project-env-path)
                                    (conda-env-activate-for-buffer)))))

Once that’s done, hit <space> h r r and your ready to go.

I'm in the Business of Ideation

People have been responding to emacs and my beard.

comments

For a while I thought I did not have a lot to say. Turns out a lot of other humans are quite interested in the much of the same things that I’m into: my hatred for the mouse, and the consequent love for efficient workflows being some of them.

I’ll give the people what they want: I get to enjoy esoteric tech and spread the word, growing a cult, while other humans have enlightened experiences (believe me I do talk like this in person) and continue propogating the techno-propaganda about enjoying computer science.

Quick Musings

From time to time, I do encounter ideas that intrigue my intellect for quite some time.
I do maintain the ideation buffer to index these ideas into the larger context of my past musings, but I would also like a conveniently accessible chronological search available for cross-domain ideas.
I’ll hence be increasing the frequency of premature technical thoughts being packaged into a micro-blogs.

I might not elaborate a whole lot in terms of the theoretical aspects of the tooling but I’ll be conceptually outlining my current thoughts over the same.

My Emacs Journey

Emacs has been a trustworthy companion of mine for around 4+ years now. We’ve shared some highs and lows. I owe a major fraction of whatever conceptual depth I maintain in computer science to messing around with my tools.

Emacs is also the core of my first major youtube breakthrough.

I haven’t yet explored the emacs niche completely and will be investing more time into honing my repertoire and understanding what sort of mindset the tooling expects from you rather than just fitting emacs into my thoughts.