Life

Table of Contents

1. What is life.org

Place for all my writting.

1.1. Conventions/Views/Principles

1.1.1. Who I write about.

Most times I make statements about the assumed 'person I want to be'. I'll call it IA (reversed Artificial Intelligence acronym; resembles 'YA' (Я) – 'Me' in Russian. Other times context reveals the subject.

  1. I specifically mark the difference between IA and me.

    By adding 'wwut?'. Options in order of consideration:

    • unlike me Negative statement.
    • right? Too simple answer, conditioning to say 'yes' without much thinking.
    • wwut? (wait, what you think?) Invites to stop and really think about it. Acronym coincides with 'w-what?' – increases doubt and al 0123.0ertness.

1.1.2. Try to write at least one sentence before outlining

o*** Org outlining is hierarchical

1.1.3. Hierarchical onthology is a struggle

2. Nutrition

2.1. Food database.

2.1.1. FoodData Central

**

2.2. Faking aps

2.2.1. MyFitnessPal

2.3. Meal Plan

2.3.1. Cheap Keto Omad + 72h fast once a week <2021-04-25 Sun>

Pre-made breakfast right after waking up (for 1h until 8am). Cooking in core gap. Exception: blending vegetables done while eating. Supplementing with light salt and magnesium. $ Macro on eating days: max 25g carbs, 80g protein goal, 120g max fat. Every day: one chicken breast, one can of sprats/tuna, 5 eggs, 200g champignons, 200g broccoli/cabbage, 50g Olive Oil, 15g dired shpinat Sometimes: quark with smetana, frozen fish, avocado oil and other goodies.

2.3.2. Russia Keto Omad me <2021-04-22 Thu>

Breakfast right after waking up. Cooking in the night. I (supposedly) get enough Sodium and Potassium from light salt (1.5 spoons a day) I only need to drink Fish Oil and take Magnesium supplements.

Macro: 120 26 120 1710 Typical meal:

  • 200g eggs: 25g protein, 20g fat, 4g carb, 280 cal
  • 200g quark: 32g protein, 18g fat, 6g carb, 320 cal
  • 100g smetana: 3g protein, 20g fat, 3g carb, 200 cal
  • 300g champignons: 12g protein, 3g fat, 1g carb, 100 cal
  • 250g poultry: 50g protein, 8g fat, 1g carb, 300 cal
  • 200g frozen broccolli/cabbage: 4g protein, 1g fat, 10g carb, 50 cal
  • 60g Olive Oil.

2.4. Foods

2.4.1. Greens

2.4.2. Diary

  1. Quark
  2. Smetana
  3. Stretchy
  4. Leafy

2.4.3. Meat

  1. Red
  2. Poultry
  3. Fish

2.4.4. Eggs

Best consumed hard-boiled: easiest, safest, most protein

2.5. Diet

2.5.1. Keto

2.6. Fasting

2.6.1. Meta

  1. Ranking meals

    The earlier the meal the better.

    1. Claim: breakfast is best meal
      • Insulin levels are lowest in the morning => faster response
      • Maintains circadian.
      • Can be done right after morning exercise that also maintains circadian

2.6.2. OMAD

2.6.3. 16/8

2.7. Supplements

2.7.1. Magnesium

2.7.2. Fish Oil

2.8. Equipment

2.8.1. Dishes

2.8.2. Scale

  1. TOBUY Xiaomi AtuMan Duka ES-1 8KG

3. Opinions

3.1.

4. Learning

4.1. Techniques

4.1.1.

4.2. Languages

4.2.1. Theory

  1. Syntax and semantics

    Syntax

4.2.2. Natural

  1. English
  2. Russian
  3. Chinese
  4. German

4.2.3. Programming


4.3. Logic

4.3.1. Books

  1. Introduction to Formal Logic 2nd ed.
    1. Deductive logic
      1. Argument

        A chain of reasoning in support of some conclusion.

      2. Logic

        Evaluating arguments. Levels: truthness of premises (assumed), inference (internal cogency: logical validity). Theory aims to systematically provide general techniques of:

        • Argument evaluation for deductive validity. !Can it be done mechanically?
      3. Deduction

        If the truth of premises absolutely guarantees the truth of conclusion, then we say that inference step of given argument is deductively valid. Equivalently, when an inference step is so, we say that its premises deductively entail its conclusion.

      4. Induction

        Extrapolation from sample cases to further cases. Results in level of probability. Not a topic of this book.

      5. Generalization

5. Formal Education

5.1. Schooling

5.2. University

5.2.1. University of People – my choice

Fully online.

  1. Moodle – online Learning Management System

    Its client is javascript app. While it's GPLv3, some significant parts are dual-licensed AGPL/Proprietary (canvas). Resolution: usage on guard.

6. Work environment (physical and digital)

6.1. Browser

Reasons to not run javascript in web browser. I refuse to run it 99.99% of cases. Unfortunately, some "apps" I better use than not despite js flaws. I minimize social networking in them.

6.1.1. Nyxt vs EWW vs Firefox

Nyxt is shiny and javascripty. EWW is not. I will setup Nyxt first and then look at EWW. Firefox is fallback.

6.1.2. Non-javascript

These were created before javascript, against javascript, or, in case of Emacs Web Wowser, both.

  1. GNU Emacs EWW
  2. w3
  3. lynx, link, elinks

6.1.3. Javascript

  1. GNU Icecat
  2. Nyxt

6.2. External displays

6.2.1. Single vs multiple

6.2.2. Remote External Display

There's VNC, X and RDP. I use sway, so only WayVNC is availabble there. RDP is always better performance.

6.2.3. Cables/Adapters

  1. HDMI

    I assume type A.

    1. ATcom ultraspeed
    2. HDMI->miniHDMI

      miniHDMI is commonly found on slim laptops.

    3. TOBUY ATcom miniHDMI/M - HDMI/F

6.3. Misc

6.3.1. Outliners

6.3.2. Leo

6.3.3. outline-minor-mode

6.3.4. Hyperbole Koutliner

6.4. Emacs

I use vanilla cfg and write mainly in that context.

6.4.1. Meta

  1. init.el
    • specific user config file loaded at startup.
    • short for any such file

6.4.2. Choosing Emacs to start from.

In Emacs, It's more benefitial and easier to remove things you don't like than write the thing from scratch. Being able to give back your contribution back to distribution is awesome. More people like me in that regard use distribution rather than own dotemacs.

6.4.3. Features

  1. Imagemagick
  2. Nativecomp
  3. Pgtk

6.4.4. Distros

  1. Doom

    Doom is simply best and with most active community.

  2. Spacemacs

    Bloated. Semi-inactive community. No authorities like Henrick, Fug0, Tecosaur.

  3. Prelude

    Old.

6.4.5. Vanilla

  1. Protesilaos
  2. Sacha Chua
  3. Iaeerfung

    Change explanations contain references to specific opinions that influence them.

    1. System-specific
      1. TODO move to chemacs
      2. Set system name
        (defcustom machines-alist nil
        
        (defun machine-identify nil
          "Return machine name if exists in `machines-alist'. Ask for it and add entrhy to `machines-alist' otherwise."
          ())
        
        (defcustom machine-current (machine-identify)
          "Current system name. Set by `machine--identify')
        
        1. Meta

          alist

    2. Guix
      1. Utils
        1. TODO Get package name with it's brief description

          Can be used:

          • as a heading name
    3. Built-in

      same problem of talking about it here as for Elisp

      1. Word wrap | deciding on long lines

        Emacs supports following ways of dealing with lines:

        • Setting up maximum line width
        • Breaking physical lines or creating virtual visual lines.
        • Truncating lines, purely visual effect.

        The best approach is virtual visual lines, because it works just as well as physical way, is more flexible/adaptable to screen size. I also like to think of line as of one atomic element below paragraph, even if it contains several sentences. It's a waste of this simple, universally accepted markup

      2. Simple | basic editing commands
        1. Clone indirect buffer

          Completion and narrowing framework solves problem of navigating many similar-called clones. Still there is things to improve with the clones themselves:

          • provide unique brief in angle brackets instead of plain number, so that pressing RET after typing it results in desired buffer.
          • mark buffer as clone to force accepting brief even when it is present as part of other buffer's name. And for others smart, context-dependent functions.
    4. Elisp

      I don't have good enough navigation system to include it here and store it in more general place, so I talk about built-ins in user-config, yeah

      1. Overlay

        More powerful than text property, but unsuitable in large numbers says manual. What's situation like with nativecomp?

      2. Text property
      3. Macros
    5. contrib-lisp

      I heavily borrow from Prot both in code and in didactic explanations.

      (let ((contrib
             (let ((d (concat (file-name-directory user-init-file) "contrib-lisp/")))
               (mapcar (lambda (x) (concat d x))
                       '("prot")))))
             (dolist (d contrib)
               (add-to-list 'load-path d)))
      
    6. History, persistence, desktop.
      1. Store changed var value in place of old in init.el
        • Only for declaration vars
        • Ask on change
    7. Language support
      1. Structured editing

        Generally useful sexp handling and syntax

        1. Meta
          1. Reinventing the wheel in lisp-specific packages vs paredit
      2. Lisp
        1. Elisp
      3. Javascript
      4. Chinese
    8. History

      <2021-04-17 Sat> Lost any little configs i had spread around different machines. Switch to Doom as main platform. <2021-04-29 Thu> Switched back in hope of getting 80% from scratch first.

    9. Eww | non-js web browser.

      I prefer using Nyxt

      1. Accessing problematic websites

        They break without javascript.

        1. Reddit
    10. Look and typeface

      Protesilaos takes very advanced approach here. I forked his configuration for use and study.

      1. General

        Simple things that affect how emacs looks

        1. Disable all 'bars'

          Keyboard and advanced navigation and command mapping techniques are more effective and don't take screen real estate.

          (menu-bar-mode -1)
          (tool-bar-mode -1)
          (scroll-bar-mode -1)
          
        2. Visual-line-mode
          (global-visual-line-mode 1)
          
      2. Modus themes

        Modus is most hackable and configurable theme framework that also happens to come with most accessible (contrast, easy to read) operandi and vivendi themes. I prefer dark vivendi. I also want to create version of it that reddifies it for use during Dark Period.

        1. Configure and load theme from modus-themes external package
          (use-package modus-themes
            :demand
            :init
            ;; Add all your customizations prior to loading the themes
          
            ;; Load the theme files before enabling a theme (else you get an error).
            (modus-themes-load-themes)
            :config
            (modus-themes-load-vivendi)
            :bind ("<f5>" . modus-themes-toggle))
          
      3. Font

        Any font I choose must conform with the following:

        • support Latin and Cyrillic character sets;
        • be readable at small sizes and look okay at large sizes;
        • offer both roman and italic variants, preferably with corresponding bold weights
        • not be too thin or at least have multiple weights from which to choose from
        • not have too short of an x-height, which makes combinations of text and numbers or delimiters somewhat unbalanced
        • not have a name that directly advertises some brand (e.g. "Helvetica" is fine as a name, even though a certain corporation tried to be identified with it but "CORPORATION Sans" is not)
        • not be flamboyant by seeking to call too much attention to its details or by exaggerating some glyph shapes
        • be equally readable against light and dark backdrops (for instance, bitmap fonts are not legible on a white background—too bad because I really like Terminus)
        • use the *.ttf spec which yields the best results on GNU/Linux

        While there are many good free/libre options available, only a handful of them cover my fairly demanding needs. Some look good at large point sizes. Some do not have italics…

        Moving on to my configurations, prot-fonts.el covers my elaborate typeface requirements. At its heart is prot-fonts-typeface-sets-alist. It contains associations of property lists (an alist of plists), each of which pertains to a give display type. For example, when I am doing a video presentation, I require font configurations that differ from what I normally use. So I have a video key in the alist to accommodate that particular need. Those associations provide granular control over font attributes, as they specify both mono and proportionately spaced font families, each with their corresponding weights and heights.

        The command prot-fonts-set-fonts prompts with completion for a display type. It gives options like laptop, desktop, video, which are drawn from the prot-fonts-typeface-sets-alist. When called from Lisp it expects a DISPLAY argument, which is a symbol that matches the car of a cons cell in the aforementioned alist.

        prot-fonts-fonts-per-monitor sets the appropriate font family and size depending on whether I am only on my laptop or have connected to it an external monitor. In the latter case we use the desktop display type.

        As noted above, prot-fonts-typeface-sets-alist associates a list of typefaces with desired weights, including for their bold variation. This is useful when the active theme is designed in a way that parameterises the exact value of a bold weight, by calling :inherit bold instead of specifying :weight bold. The former applies the bold face, whereas the latter sets the weight at a constant number, which typically is 700. Thus, when the theme is designed that way, we can configure the :weight of the bold face to, e.g., semibold and have that propagate across all the faces that the theme defines.

        Now a few notes about setting fonts in Emacs.

        While there are many ways to define a baseline or fallback font family, I find that the most consistent one in terms of overall configuration is to do it at the "face" level (read the docstring of set-face-attribute). Faces are understood as the domain of themes, though themes are just Elisp programs hence there is no real distinction here and it is perfectly fine to have one program define some properties of a face while another specifies some others. The key is to make those complementary, so that one does not override the other. Put concretely, prot-fonts.el sets properties such as :family, while my themes handle things like colours.

        To appreciate this point, consider that in Emacs parlance a "face" signifies a construct that bundles up together several display attributes, such as a foreground and a background colour, as well as all typography-related values. Multiple assignments of value can expand the face's specifications, except when one explicitly overrules a given property.

        There are three faces that are of immediate interest to prot-fonts.el: the default, variable-pitch, and fixed-pitch. The first is the Emacs frame's main typeface, the second specifies a proportionately spaced font, and the third does the same for a monospaced family. There are various scenaria where text on display needs to be rendered in variable-pitch, while others must remain in fixed-pitch. For example, let org-mode inline code be presented in its monospaced font while using a variable width typeface for the main text, or just use variable-pitch for User Interface elements such as the mode line to economise on spacing, and so on. Again, my Modus themes cover that niche out-of-the-box (and offer relevant customisation options). We call this a "mixed font" setup: the easiest way to get to it is to enable variable-pitch-mode .

        Relevant publications of Prot that are not part of this document:

        (use-package prot-fonts
          :hook
          (modus-themes-after-load-theme-hook prot-fonts-restore-last)
          :bind
          ("C-c f" . prot-fonts-set-fonts)
          :custom
          (x-underline-at-descent-line t)
          (prot-fonts-typeface-sets-alist
           '((laptop
              . ( :fixed-pitch-family "Iosevka Comfy"
                  :fixed-pitch-regular-weight normal
                  :fixed-pitch-heavy-weight bold
                  :fixed-pitch-height 280
                  :fixed-pitch-line-spacing 1
                  :variable-pitch-family "FiraGO"
                  :variable-pitch-height 0.9
                  :variable-pitch-regular-weight normal))
             (desktop
              . ( :fixed-pitch-family "Iosevka Comfy"
                  :fixed-pitch-regular-weight normal
                  :fixed-pitch-heavy-weight bold
                  :fixed-pitch-height 110
                  :fixed-pitch-line-spacing nil
                  :variable-pitch-family "FiraGO"
                  :variable-pitch-height 0.9
                  :variable-pitch-regular-weight normal))
             (presentation
              . ( :fixed-pitch-family "Iosevka Comfy"
                  :fixed-pitch-regular-weight normal
                  :fixed-pitch-heavy-weight bold
                  :fixed-pitch-height 140
                  :fixed-pitch-line-spacing nil
                  :variable-pitch-family "Source Sans Pro"
                  :variable-pitch-height 1.0
                  :variable-pitch-regular-weight normal)))
           (prot-fonts-laptop-desktop-keys-list (prot-fonts-laptop-desktop-keys) "update after `prot-fonts-typeface-sets-alist' change")))
        
        
        
    11. Keyboarding

      I want to replace all modifiers with neat, automatically-generated hydra system.

      1. Hydra sequence
      2. Full modifier usage replacement.

        4 keys used as vowels in plover make symmetric sticker mod array accessed by thumbs

        Use of KMonad tap-hold buttons and key-chord.el package theoretically allow for 6 mod combinations if we take each side separately. In practice hold time is too low for thumbs to reliably perform on two buttons. Georgi may perform better here, as it has 12g switches. But it is a minor detail, as it is 5 combinations on each side still!

        We can add alteration and mod meaning dependance on previously pressed key to the mix. Idk how much it adds theoretically.

        We can cover all vanilla bindings in these five combinations:

        1. o e | C | repeat to add shift
        2. O E | M | –*–
        3. a u | C-M | repeat to add M
        4. A U | M-S | repeat to add C
        5. AO EU | C-M-s

        Combinations can be stacked when pressed consequently ( o

        Interesting observations:

        • It's hard to predict on which side of kb you end when alterating long sequences There probably should be a way to navigate it in last 1-2 moments, like a Falcon-9 rocket.
        • Spc key is a good leader key.
    12. Keychords
    13. Modal editing

      There are many packages implementing it: (long list). Among most advanced are Boon and Meow. Meow is most advanced, has cool and consistent custom set of commands to it that implemet kakoune-style editing. I can take inspiration from Boon's layout at first though.

  4. Completion and narrowing framework

    This is very important topic. One of best, universal features possible in Emacs.

    1. Meta
      1. DISCUSS Why Prot includes marginalia as part of Completion&Narrowing framework?

        Does Hyperbole smart buttons belong here too? Hyrolo?

    2. Selectrum | Incremental narrowing
      (use-package selectrum
        :config
        (selectrum-mode 1))
      
    3. Ctrlf | Single-buffer text search
    4. Orderless | Completion style matching multiple regexps in any order
      (use-package orderless
        :custom
        ;; Optional performance optimization by highlighting only the visible candidates.
        (orderless-skip-highlighting (lambda () selectrum-is-active))
        (selectrum-highlight-candidates-function #'orderless-highlight-matches)
      
        (completion-styles '(orderless)))
      
    5. Marginalia in the minibuffer
      (use-package marginalia
        :demand
        :bind
        (("M-o r" . marginalia-cycle))
        :config
        (marginalia-mode)
        :custom
        (marginalia-annotators '(marginalia-annotators-heavy marginalia-annotators-light nil)))
      
      
      
    6. Consult | Consulting `completing-read'
    7. Embark | Mini-buffer actions rooted in keymaps
    8. Hyperbole
    9. Avy | Tree-based completion (like Hydra for narrowing things on-screen)
      (use-package avy
        :config
        (avy-setup-default)
        :bind
        (("C-c C-j" . avy-resume)
        ("C-'" . avy-goto-char-timer))
        :custom
        (avy-keys '(?c ?i ?e ?a ?t ?n ?s ?r)))
      
    10. Save minibuffer history
      (savehist-mode 1)
      
  5. Org
    1. Agenda
      1. General
        (use-package org
          :bind
          ("C-c a" . org-agenda))
        
      2. Files to include
        (use-package org
          :custom
          (org-agenda-files '("life.org")))
        
    2. Outlining

      There is distinction between headings and items. List items are a tree within a tree. I don't like distinction. The functionality items serve could be achieved with specially marked headings and maybe I would try to do it. But as it stands now, items are more convenient to use.

      1. Convert item to heading
        
        
      2. Refiling
      3. Searching/navigating
        • `org-goto' Has weak distinct modal navigating OR file-like search interface. Gotta find alternative that uses `completing-read'
        • `org-search-view' using agenda
        • `org-sparse-tree' using folding and highlight overlays.
      4. Marking elements

        To decide whether continue marking I need to see next element.

        1. TODO Extend `org-mark-element' to support moving mark OR pointer

          Ref: `mark-paragraph'

          (/org-mark-element (&optional arg
          
    3. Time tracking
      1. org-pomodoro

        Aid task clock-in/off

        (use-package org-pomodoro)
        
      2. org-clock

        I clock-in/off tasks with org-pomodoro help. I generate timetable with org-clock.

    4. Literate Programming
      1. Tangle code into file.
        1. RESOLVED :tangle filepath

          Combined with :header-args: heading property allows life.org to work as intended.

        2. DONE crude hack ,ob-tangle-heading   dumb

          There is better built-in way.

          1. Goto headings by unique org id
          2. Open them in temporary buffer
          3. Tangle code
          (use-package emacs
            :config
            (defcustom |tangle-id-file-alist nil "alist of heading id matching tangled file path")
            (defun |ob-tangle-headings nil
              "tangle headings found by ID to File as specified in `,tangle-id-file-alist'"
              (dolist (l |tangle-id-file-alist)
                (let ((p (org-find-entry-with-id (car l)))
                      (f (cdr l)))
                  (goto-char p)
                  (org-copy-subtree)
                  (with-temp-buffer
                    (yank)
                    (org-babel-tangle-file nil f)))))
            :custom
            ((|tangle-id-file-alist
              . '(;;doom emacs iung
                 ("05936fae-4c84-4410-b5da-efe74afd018a" . user-cfg-file))))
            )
          
    5. Structure templates
      (use-package
        org
        :custom
        (org-structure-template-alist
         '(("a" . "export ascii")
           ("c" . "center")
           ("C" . "comment")
           ("e" . "src emacs-lisp")
           ("x" . "example")
           ("E" . "export")
           ("h" . "export html")
           ("l" . "export latex")
           ("q" . "quote")
           ("s" . "src")
           ("v" . "verse"))))
      
    6. Capture
    7. Todo Keywords

      #+beginsrc emacs-lisp (use-package org :custom (org-todo-keywords '((sequence "TODO" "DONE") (sequence "2DO" "DONE") (type "2BUY")))) #+endsrca

6.4.6. Chemacs profile switcher

  1. Load profile-specific literate cfg file

6.5. GNU/Linux Distro

6.5.1. Guix

Distro built around Guix Unix Manager (packages, services, user homes.. system)

  1. About
  2. Package
  3. System
    1. Config
      1. General
      2. Machine-specific

        Installer automatically identifies machine based on specific hardware

        1. ez
        2. nl
        3. sm
        4. vm
    2. Windows Dual-Boot

      Guix intentionally doesn't support it in official distribution. I respect and approve that. However, there are machines I want to use which I don't own and can't fully liberate. In these cases having windows as default boot entry is only benefitial.

      • Other users can notice there are other system on the machine.
      • More time to choose Guix => less incidental boots to msos.
      • Choosing Guix is two keypresses away.
      • Sometimes it's only way to dualboot from same harddrive.
      1. Post-reconfigure hardcoded hack
      2. TODO guix windows dualboot extension

        This should

  4. Home

6.5.2.

6.5.3. Arch

6.5.4. Ubuntu

6.5.5. Debian

6.5.6. NixOS

6.6. Window Manager

EXWM is closest to what I want from WM. Emacs all the way. Unfortunately it doesn't work with pgtk-nativecomp branch. StumpWM is second closest! I'd love to hack on it with Common Lisp. Someday in the future I'll create Guile Wayland Compositor. That will be ideal.

On critical application doesn't yet work on Wayland – Plover.

6.6.1. Stumpwm

  1. Meta
    1. Blueprint

      Group save

  2. Iaeerfung
    1. Functions
      1. On startup
        1. Open default desktop
        2. Try to restore previous desktop
      2. Open specific desktop
      3. Blueprint book manipulation
        • create by saving
        • apply by selecting
        • edit by selecting and saving
    2. Keybinding

      Prefix key is great as is.

      F1-12 I use for constructing from blueprint.

      
      
    3. Group(s)
    4. TODO Pseudo-Tags
    5. Desktops

6.6.2. EXWM

6.6.3. XMonad

6.6.4. AwesomeWM

6.6.5. Sway

  1. Iaeerfung

6.6.6. Meta

  1. Concept
    1. Dynamic management
      1. Startup
    2. Frames and windows

      Frame exist on big rectangle and is rectangle Window exist within a frame.

    3. Blueprint

      Declarative or, in the end they are all at least, procedural frame configuration for any given rectangle.

    4. Tags and workspaces and groups

      Workspace is constructed from blueprint and exist in head. Tags features is superset of workspaces features. The difference is that workspace can't share same windows , they are bound to single frame and is bound to a single head itself. Both tags and workspaces can be groups if they allow for window to exist in the background, without taking screen space.

    5. Desktop

      State of window system whatever it is. Got that from Emacs. Can be workspaces, can be window list, nothing prevents to be both.

  2. Deciding wm

    Help with comparing features and measuring their usefullness, noting super combinations.

    1. Tags vs workspaces vs groups

      Groups > tags > workspaces. Features mostly complement each other. Best to try get all in whatever WM of choise. Many tags features can be at least in part imitated with workspaces and automatic tiling. We miss only displaying same window multiple times in same view but that is least useful feature of tags. On single-head setup everything can look just as well. Pseudo-groups are easier to implement. Actually, they are more useful thang tags. Changing frame and window configuration of group is as powerful, straightforward and flexible as using Emacs Fullscreen.

    2. Dynamic vs manual vs automatic tiling
    3. Programmability vs scriptability

      Unfortunately no WM have all. Programmable WM come closest to it. Stumpwm is most programmable WM.

  3. Usages
    1. Single-head-oriented

      One huge group. Just like Emacs.

  4. DISCUSS what is word for both abstract and specific way for stating most information.

    Idk, but most things are both relatively abstract and specific.

  5. DISCUSS writting Meta or General

    I just like Meta more rn. <2021-04-28 Wed> "Meta Concept"?

6.7. Keyboarding

6.7.1. Key mapping

As long as Emacs gets the key right, functionality is more important than performance. QMK has more functionality and performance than KMonad, even though not as pleasant to use. My main input method should be plover steno

  1. QMK
  2. Kmonad
  3. Plover – stenography

6.7.2. Command mapping

I use term command as in Emacs, meaning function bindable to a key.

  1. Emacs key-chord

    Until kmonad supports keychords. Its problem is requirement of at least 100ms press. Which is more than I have for tap-hold buttons in KMonad currently. Will be fine if setting them to 115ms will work fine and that native-comp improves latency.

6.7.3. Meta

  1. TODO Toggling Plover from Kmonad

    (around …) sequence issuing PHROLG doesn't seem to have effect. It's possible to toggle plover from shell command.

6.8. Computer

6.8.1. Optimal computer set.

I refrain from buying/using hardware with unfree design. Risc-V seem like best architecture to build upon. It has most academic and other momentum. While with x86 I can find machine that will be adequate both as desktop and always-on server, Risc-V is immature and I can only hope for gradually replacing things with more specialized machines. It'll be 2 years until I'll have money to buy Rasberry Pi level board and use it as main desktop.

6.8.2. What computer I use from what I have.

  • vm – Compilation machine. most powerful, but in worst place
  • nl – Reserve compilation / Good GPU machine. powerful, in best place, too loud fans.
  • sm – Has battery. Reserve reserve compilation / GPU machine. only 4gb ram and hdd, baad screen
  • ez – Main machine least powerful laptop, but passive cooling and good screen, 8gb ram, ssd.

7. Schedule/Regime/Routine

7.1. Polyphasic Sleep

Schedule should have:

  • 6h tst, lowest safe for underage
  • cores at night
  • alap naps in the day
  • gap of at least one sleep cycle between cores
  • as much distinct sws cores and rem wakes as possible
  • TEMPORARILY dp end at 7am and next canSleep start at 3pm

According to those, assuming standard 90m cycle, this TC1e is really the best fit: 2100-2230 0030-0330 0530-0700 1500-1520

7.1.1. Going to sleep

7.1.2. Waking up

  1. Dream recall without moving or opening eyes.
  2. Getting out of bed
  3. Journaling dreams
  4. Drinking water
  5. (Optional) Going toilet
  6. Washing fase with cold water
  7. Dressing up

During adaptation "getting out of bed" should come very first due to high risk of oversleep in bed.

7.1.3. Dark period

Ideally for circadian there should be no light. But It's better to compromise it with use of computer display and red backlight leds (reducing eyestrain) Still, I strive for minimal intrusion. I keep eyes closed longer, use small screen with low brightness and redshift setting, dim leds.

Also, I minimize physical activity, reduce temperature, water drinking and prohibit eating.

7.1.4. Alarm setup

Modern smartphone is too fallable. Running out of battery, silent alarm happens. Two smartphones look much better. I use three (one old smphone exclusively for alarm).

  1. Alarm apps

    I use AMdroid.

    1. System
    2. Alarmy

      Cons:

      • No amoled theme
      • Stupid vibration setting
      • No exportable settings
      • Ugly zoomer/limited interface

      Pros:

      • Many missions
      • Best turn-off prevention
      • Turbo-alarm
    3. AMdroid

      Cons:

      • No built-in keyboard – bad for math mission (though it allows for cool Capcha mission I don't use)
      • Post-alarm confirmation can be missed (f.e. alarmy launches dedicated screen with big red button.)
      • No option for enabling vibration after sound

      Pros:

      • inverted alarmy cons

7.2. Nutrition

7.2.1. Food database.

  1. FoodData Central

7.2.2. Faking aps

  1. MyFitnessPal

7.2.3. Meal Plan

  1. Russia Keto Omad me <2021-04-22 Thu>

    Breakfast right after waking up. Cooking in the night. I (supposedly) get enough Sodium and Potassium from light salt (1.5 spoons a day) I only need to drink Fish Oil and take Magnesium supplements.

    Macro: 120 26 120 1710 Typical meal:

    • 200g eggs: 25g protein, 20g fat, 4g carb, 280 cal
    • 200g quark: 32g protein, 18g fat, 6g carb, 320 cal
    • 100g smetana: 3g protein, 20g fat, 3g carb, 200 cal
    • 300g champignons: 12g protein, 3g fat, 1g carb, 100 cal
    • 250g poultry: 50g protein, 8g fat, 1g carb, 300 cal
    • 200g frozen broccolli/cabbage: 4g protein, 1g fat, 10g carb, 50 cal
    • 60g Olive Oil.

7.2.4. Foods

  1. Greens
  2. Diary
    1. Quark
    2. Smetana
    3. Stretchy
    4. Leafy
  3. Meat
    1. Red
    2. Poultry
    3. Fish
  4. Eggs

    Best consumed hard-boiled: easiest, safest, most protein

7.2.5. Diet

  1. Keto

7.2.6. Fasting

  1. Meta
    1. Ranking meals

      The earlier the meal the better.

      1. Claim: breakfast is best meal
        • Insulin levels are lowest in the morning => faster response
        • Maintains circadian.
        • Can be done right after morning exercise that also maintains circadian
  2. OMAD
  3. 16/8

7.2.7. Supplements

  1. Magnesium
  2. Fish Oil

7.2.8. Equipment

  1. Dishes
  2. Scale
    1. TOBUY Xiaomi AtuMan Duka ES-1 8KG

7.3. Exercise

7.4. Work session

  • 90m long including break (BRAC)
  • short 5m meditation at the end.

7.4.1. Timer

Org-timer in Emacs.

7.5. Going outside

7.6. School

7.7. Morning routine

7.8. Evening routine

8. People and groups of people

Should be HyRolo list, really

8.1. Yurii Kholodkov (iaeerfung)

Me.

9. Journal

So, I managed to setup my keyboard, twice. It took me insane 18 hours. I've watched plenty of videos during the process. It absolutely wasn't worth it. So, what do I do now? I have only one hour left! Let's just write a bit about meditation practice.

9.1.

9.2. <2021-04-29 Thu>

Session 1: manual reading. why has it took 25 mins…

10. Meditation

I have 3 hours free during the core gap dedicated to it. 0.5h Day review 2.5h Sitting meditation

10.1. Day review

10.1.1. 4 kinds of mindfulness

Author: Yurii Kholodkov

Created: 2021-05-23 Sun 12:23

Validate