An early retrospective of 2017

The typical end-of-year thingy will also happen, as it has the last five years! But this spring I stumbled upon this, and I think it has potential! Changing “travel outside the US” and “how many states did you visit” to my cases, also not changing 2013 to 2017 everywhere, but othertwise leaving it as it is.

Now playing: Егор Летов – Про дурачка

1)Was 2017 a good year for you?

Yes, but not exceptionally so

2) What was your favourite moment of the year?

The summer trip to the Carpathians, Shypit waterfall and the Synevyr lake. (Ahaha, sounds so weird in English!)


Most of my camping trips and most of the travelling was absolutely awesome.1

On a professional level, FedCSIS 2017. It made me feel with my entire skin that science is awesome and that I am mostly able to do it, if I apply myself. That it’s one of the few areas where I will be able to capitalize on my strengths and compensate my weaknesses.

3) What was your least favourite moment of the year?

Everything leading to my diploma, my diploma itself, and the horrible results I got. It put me out of balance for more than a month.


Ideas for Quantified Self experiments

Once I will be reasonably confident that I have a semi-OK-baseline, it would be great to actually start doing stuff.

How to do self-experiments:

I’d also like to make predictions at the beginning, and to ask myself some question (how hard was it, do I feel deprived or tempted, etc). This will keep me focused

Those are the ones that I suspect will be very interesting and easy to do and formalize and with the biggest possible impact:

  1. Eliminating caffeine (ABAB)
    1. Semi-regularly but tracked except for tea (right now)
    2. Use caffeine+L-theanine systematically and see how (and when) does it influence the following: (for two weeks)
      1. CBS
      2. DNB
      3. typing speed
      4. General wellbeing(=mood)
    3. Phenibut 2-3 times in the middle of those two weeks
    4. Eliminate both caffeine and phenibut totally after that, for two weeks
  2. Jogging/exercise on sleep and mood the following day/night (I think I can do it at the same time as 1.)
  3. Creatine and citrulline on workouts and jogging (keep them consistent, 2-3 times a week, and just either take them or not, and see what happens)
    1. The workout/run itself
    2. Muscle soreness next day
  4. Food on cognition, especially a lot of it, especially junk food
    1. Not as experiment, just record it, and see what happens.

Not a priority but very interesting:

  1. No caffeine or alcohol for 30 days
  2. ISR every evening for 2 weeks
  3. Vegan for 30 days
  4. Intermittent fasting
  5. Mindfullness meditation every evening for 20 days

More abstract:

  1. Recite affirmations every day
  2. Activity alarm every 30 minutes
  3. MINDFULLNESS and outside
  4. Eat only on response of hunger
  5. Write 1000 words a day for two weeks

Over and out for now

Pchr8board (third update to the Dvorak Mirrorboard layout)


Now playing: Машингвери, штурмгевери


You might remember the last two posts about the Dvorak Mirrorboard layout. Well, I’ve updated it for the third time, and it’s gotten different enough that I think I can call it Pchr8board, just to have a better name and to reflect the fact that it’s made for my own personal use and not as some kind of general-purpose layout, though it could be a nice starting point for further changes.

Ladies and gentlemen, Pchr8board:


Keys without a legend have the same letters attached.

Otherwise, this is how you read the picture above:


The layout uses left alt as a Latch key, that, when pressed with left thumb, switches the letters to their corresponding right-hand letters, as per original Mirrorboard, but for Dvorak.

Other important changed keys are highlighted.

  • Enter and BackSpace are on the Tilde (“~”) key.
  • The Tab key allows to type forward slashes (“/”), mostly for searching, and diaereses (ümläüts) on the letter immediately following Shift+Latch+Tab (awkward at first, but not more so than the typical compose key approach).

The layout is usable as a typical Dvorak one, and I wanted to add a couple of more keys that I miss. For the right hand, there are:

  • Direction keys on the Latch+”htnc”, which are the base keys for the right hand
  • A Backspace key on Latch+r

I sorely needed both of those, since they required too much movement in a traditional layout. What’s also nice is that all the keyboard shortcuts still work, that is for the OS it doesn’t make much difference. Selecting words word-by-word using Ctrl+Shift+right_arrow as Ctrl+Shift+Latch+n still works, for example. In practice such chords are much less complicated and easier to get used to than they seem. Honest.

At first, I wanted to add the arrow keys to the left hand, but didn’t find a not-awkward way to do this. Next version, maybe. Another logical change would have been using hljk or someting, since this is what I use for my i3wm shortcuts, but, again, I think keeping it classic in this aspect would be more beneficial.

Installation instructions:

  • Copy to your key definitions folder (usually /usr/share/X11/xkb/symbols/)
  • Either just setxkbmap left3 or integrate it in whatever you are using (e.g. setxkbmap -option 'grp:rshift_toggle, compose:rctrl' left3,ru,ua)
  • In case you want to edit it, copy it every time to a new name. The layout gets cached to the DE, and for it to read the new changes you would have to reload X, unless it’s a new file. Or just during editing do xkbcomp mirrorboard.xkb $DISPLAY 2>/dev/null as recommended in the original post, maybe removing the last part to see any errors.

The layout is on Github.


// Pchr8board, formerly known Dvorak MirrorBoard (v3), based on MirrorBoard one-hand keymapping

// Original keymap:
// Changes and details:

default  partial alphanumeric_keys modifier_keys
  xkb_symbols   "dvorak-mirrorboard" {

// Using L-Alt as modifier instead of Caps lock.

// Additionally, it's a Latch key, not a Shift one, so pressing it once activates the group. 
    key <LALT> { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ ISO_Level3_Latch ] };

// Mod+Space is return

// Tilde is Backspace by itself, 
// Mod+Tilde is Return 
    key <SPCE> { [ space, space, Return ] };
    key <TLDE> {    [     BackSpace,    asciitilde,    Return,    asciitilde    ]    };

// Mod+Tab gives a slash, which I use often (searching etc.) 
// Mod+Shift+Tab gives an umlaut on the next character

    key  <TAB> {    [ Tab,    ISO_Left_Tab, slash, dead_diaeresis]    };

    key <AD01> { [  apostrophe,    quotedbl, l, L] };
    key <AD02> { [    comma,    less,   r, R] };
    key <AD03> { [      period,    greater, c, C] };
    key <AD04> { [        p,    P, g, G        ]    };
    key <AD05> { [        y,    Y, f, F        ]    };

    key <AC01> { [        a,    A, s, S         ]    };
    key <AC02> { [        o,    O, n, N        ]    };
    key <AC03> { [        e,    E, t, T        ]    };
    key <AC04> { [        u,    U, h, H        ]    };
    key <AC05> { [        i,    I, d, D        ]    };

    key <AB01> { [   semicolon,    colon,z, Z] };
    key <AB02> { [        q,    Q, v, V        ]    };
    key <AB03> { [        j,    J, w, W        ]    };
    key <AB04> { [        k,    K, m, M        ]    };
    key <AB05> { [        x,    X, b, B        ]    };

    key <AE01> {    [      1,    exclam,        0,    parenleft    ]    };
    key <AE02> {    [      2,    at,        9,    parenright    ]    };
    key <AE03> {    [      3,    numbersign,    8,    asterisk    ]    };
    key <AE04> {    [      4,    dollar,        7,    ampersand    ]    };
    key <AE05> {    [      5,    percent,    6,    asciicircum    ]    };

    // Backspace and arrow keys
    key <AD08> { [        c,    C,    Up,     Up    ]    };
    key <AD09> { [        r,    R,    BackSpace,    BackSpace        ]    };
    key <AC07> { [        h,    H,    Left,    Left        ]    };
    key <AC08> { [        t,    T,    Down,    Down   ]    };
    key <AC09> { [        n,    N,    Right,    Right        ]    };

    key <AD06> { [        f,    F          ]    };
    key <AD07> { [        g,    G        ]    };
    key <AD10> { [        l,    L        ]    };
    key <AD11> { [    slash,    question    ]    };
    key <AD12> { [    equal,    plus        ]    };

    key <AC06> { [        d,    D        ]    };
    key <AC10> { [        s,    S        ]    };
    key <AC11> { [    minus,    underscore    ]    };

    key <AB06> { [        b,    B        ]    };
    key <AB07> { [        m,    M        ]    };
    key <AB08> { [        w,    W        ]    };
    key <AB09> { [        v,    V        ]    };
    key <AB10> { [        z,    Z        ]    };

    key <BKSL> { [  backslash,  bar             ]       };

    key <AE06> {    [      6,    asciicircum    ]    };
    key <AE07> {    [      7,    ampersand    ]    };
    key <AE08> {    [      8,    asterisk    ]    };
    key <AE09> {    [      9,    parenleft    ]    };
    key <AE10> {    [      0,    parenright    ]    };
    key <AE11> {    [     bracketleft,    braceleft    ]    };
    key <AE12> {    [     bracketright,    braceright        ]    };


The following resources helped me:




Exporting Cambridge Brain Sciences data

Now playing: Ry Cooder – Jesus on the Mainline

Cambridge Brain Sciences is a nice way to measure brain health. After quick (~10 minutes) tests, it gives you your score in three main areas (Verbal, Reasoning and Memory) and your C-Score, which is “the summary of your cognitive function”. It’s meant not as a semi-static measure (~IQ), but as a “how are you feeling today” kind of thing.

I use it both as a way to track/manage some depression symptoms, and as an objective way to measure how various things influence your mental performance (think exercise/nootropics/sleep/…). I wrote a bit about it and how I use it here.

It’s pretty awesome, but lacks a CSV export, or even just a way to get the data in a readable format, without having to hover on their charts. I wrote them (they are pretty responsive and open to suggestions, by the way) and they said that they will add that as a planned feature. I  didn’t want to wait (patience is not one of my virtues) and wanted to start running some analyses on the data I have, but didn’t want to it down manually. Hovering over the data points in their chart to get the individual data points would have been very very tedious.

Looking at the source code (and hoping to find some “data.json” or something similar), I saw that for their charts they use Highchart. After skimming the documentation, I wrote small and extremely basic javascript snippet that would output the dates and datapoints of the currently open chart:

chart=0; d='\n';
for (i=0;i < Highcharts.charts[chart].xAxis[0].categories.length; i++) {
d=d+(Highcharts.charts[0].xAxis[0].categories[i]+" "+Highcharts.charts[0].yAxis[0].series[0].points[i].y+"\n");

To use:

  1. Open the CBS dashboard
  2. Open the developer console.
  3. Paste snippet above


Then, if you need the verbal/memory/reasoning data, just switch to that tab and repeat the process.

For individual tests the process is very similar.

The snippet is the same, but you need to change the “chart” parameter. Switch to the “Tests” page, then right-click on the needed graph, “Inspect element”. You are looking for the data-highcharts-chart parameter:


This is the number you need. Set it in the first line of the snippet (chart=” “) and run.

To work with the data, I pasted it into LibreOffice calc with the following settings.


You need the “Separated by space” and “Merge delimiters”.

That way, it gets outputted to different cells, and you can copy the ones you need. I’m sure Excel can do something similar.

To merge the AM/PM on the other cell, I used the following formula to convert the time:


with B37 as cell with the time, and C37 as cell with AM/PM.

I hope I’m not infringing any terms of service, it’s not even scraping — just accessing the data already in the graphs. And I am not doing a tool or Greasemonkey script out of this, because I think that I won’t need to do this often (I add the data manually at the end of each tests if I do them), but if there’s interest, I could do something more “beautiful” and portable — let me know!



Quotes for today

Straight from my quotes file, with sources mostly missing. But all of those are easy to Google.

“Experience by itself teaches nothing… Without theory, experience has no meaning. Without theory, one has no questions to ask. Hence, without theory, there is no learning.” ― W. Edwards Deming, The New Economics for Industry, Government, Education

Home is where the water tastes normal

You don’t need the cow to get the milk

It might be best to let go of finding meaning in life from your job. Try to find a low-stress slack job that pays the bills and leaves you energy to do other things, and then find meaning in life from those things. This will also allow you to shift from one interest to another.

The best thing about being a hybrid – you don’t have to be particularly good at either yet people are constantly blown away by the simplest things.

My personal belief (and mantra of creativity/slacking) is that if you do something people have never seen before, you will always exceed their expectations.

“It’s easy to pretend expertise when there’s no data to contradict you.”

В ДНР ожидаются серьёзные кадровые перестановки.  Но не те, о которых вы думаете.  Ожидающиеся перестановки будут сделаны, чтобы оттянуть те, о которых вы думаете.

“Hack Like Nobody’s Watching (because it is highly likely that nobody is watching)”

Pay more attention to what the losers do wrong as to what the winners do right

Title: somethingsometing (should be avoided)

And I will deny that I ever said this, but …

Aren’t you a little worried that there’s a hell?

Your original research was thought-provoking, although it would be considered felony in most states.

Generally you want your alibi not to be a witness at the scene of the crime. (Daria)

LPT: When you’re thinking about buying something you don’t necessarily need, imagine the item in one hand and the cash in the other. Which one would you take?

Never forget that everything Hitler did in Germany was legal.   ~ Martin Luther King Jr.

A little inaccuracy sometimes saves tons of explanation.   ~ HH Munro

What is said when drunk has been thought out beforehand.   ~ Flemish proverb

If you buy the why, the how is infinitely bearable.   ~ Friedrich Nietzsche

Seek, above all, for a game worth playing.   ~ Robert S. de Ropp

The best use of life is to spend it for something that will outlast it.   ~ William James

Only the simplest mind can believe that in a great controversy one side was mere folly.   ~ AJ Kane

Practice choosing discomfort

Real men don’t need either condoms or antivirus

Welcome to the Internet. Consider this a threat.

My friend is epileptic. One time after her seizure I asked if she knew me. She looked up at me and eventually said “Mom?” in a very uncertain tone.  I’m a little younger than her and I have a beard.