serhii.net

In the middle of the desert you can say anything you want

16 Sep 2023

'The Hacker Manifesto', переклад українською

1134 words, ~4 min read

Оригінал: .:: Phrack Magazine ::.
Контекст: Маніфест хакера — Вікіпедія / Hacker Manifesto - Wikipedia
Існуючий дуже класний переклад, не відкривав, поки не закінчив свій: Маніфест хакера | Hacker’s Manifesto | webKnjaZ: be a LifeHacker

                               ==Phrack Inc.==

                    Том I, випуск 7, Ph-айл[0] 3 з 10

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Наступне було написано невдовзі після мого арешту...

	                        \/\Совість хакера/\/

	                               автор:

	                          +++The Mentor+++

	                           8 січня 1986р.
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

	Сьогодні ще одного спіймали, пишуть у всіх газетах. "Кібер-скандал:
підлітку повідомили про підозру", "Кіберзлочинця затримали після
проникнення в систему банку".
	Тупа школота[1], вони всі однакові.

	Та чи ви, з вашою трафаретною ментальністю[2] та знаннями 
інформатики зразка першої половини пʼятидесятих[3], коли-небудь дивилися 
в душу хакера?[4] Чи вас колись цікавило, що є причиною його поведінки[5], 
які сили на нього впливали, що його сформувало?
	Я хакер, ласкаво прошу у мій світ...
	Мій світ почався ще зі школи... Я розумніший за більшість інших
дітей, і дурниці, які нам викладають, мені набридають.
	Тупий відстаючий[6], вони всі однакові.

	Восьмий, девʼятий, десятий, одинадцятий клас[7]. В пʼятнадцятий
раз слухаю, як вчителька пояснює, як скорочувати дроби. Мені все ясно. "Ні, 
Вікторія Миколаївна[8], я не написав проміжні кроки, я розвʼязав все усно..."
	Тупий підліток. Мабуть списав. Всі вони такі.

	Сьогодні я зробив відкриття. Я знайшов компʼютер. Ха, почекай-но,
це круто. Він робить те, що я від нього хочу. І якщо він помиляється,
це тому, що помилився я. А не тому що він мене не любить...
                         Або відчуває від мене загрозу...
                         Або думає що я тіпа самий умний[9]...
                         Або не любить викладати[10] і йому тут не місце...
	Тупий підліток. Він постійно тільки грає в свої ігри. Всі вони такі...

	Потім це відбулось... відчинились двері в світ... несучись телефонною 
лінією як героїн венами наркомана, надсилається електронний пульс,
шукається спасіння від невігластва навколо...[11] Знаходиться борд.[12]
	"Це воно... це те, до чого я належу..."
	Я з усіма тут знайомий... попри те, що я з ними ніколи не 
зустрічався, не розмовляв, і колись можливо більше нічого не чутиму про 
них... Я їх всіх знаю...
	Тупий підліток. Знову займає телефонну лінію... Вони всі однакові.

	Та можете не сумніватись,[13] що ми всі однакові... Нас годували
дитячими сумішами з ложки, коли ми хотіли стейк... а ті куски мʼяса, які 
до нас все ж потрапляли, були вже пережовані і без смаку. Над нами
панували садисти, або нас ігнорували байдужі. Для тих, хто хотіли чомусь 
нас навчити, ми були вдячними учнями, але їх було як краплин дощу в
пустелі.

	Цей світ зараз наш... світ електрона і комутатора, світ краси
бода[14]. Ми користуємося існуючою послугою не платячи за те, що могло б 
бути дуже дешевим, якби ним не завідували ненажерливі бариги[15], і ви 
називаєте нас злочинцями. Ми досліджуємо... і ви називаєте нас 
злочинцями. Ми шукаємо знання... і ви називаєте нас злочинцями. Ми 
існуємо без кольору шкіри, без національності і без релігійної 
нетерпимості... і ви називаєте нас злочинцями. Ви будуєте атомні бомби, 
ви ведете війни, ви вбиваєте, обманюєте, і брешете нам, намагаючись 
заставити нас повірити, що ви це робите для нашого блага, і попри все - 
це ми тут злочинці.

	Так, я злочинець. Мій злочин - моя допитливість. Мій злочин - 
оцінювати людей по тому, що вони кажуть і думають, а не по тому, як 
вони виглядають. Мій злочин в тому, що я вас перехитрив, і ви мене 
ніколи не пробачите за це.

	Я хакер, і це мій маніфест. Можливо ви зупините мене як особу, але ви 
ніколи не зупините нас всіх... зрештою, ми всі однакові.
	

Замітки:

  1. Ph-айл: worst of both worlds between phile and файл
  2. Damn kids: тупі/кляті/грьобані діти/школота1/малолітки2? Дякую цьому твіту Букви, який дає мені моральне право використовувати слово “школота”, бо нічого інше не клеїлося (“Окаяні дітлахи!")
  3. three-piece-psychology: інтерпретую як невисоку оцінку розвитку внутрішнього світу. Тому: пересічним/шаблонним/банальним/трафаретним3/примітивним/нехитрим/безхитрим; psychology: ‘інтелект’ але не зовсім, мені подобається ‘ментальність’
  4. and 1950’s technobrain: Німецький переклад, який сподобався англіцизмами та дав ідею перекласти technobrain в значенні “знання про компʼютери”, а не слово в слово: Berühmte Manifeste 2 – openPunk
  5. хакер/гакер: Вікіпедія вважає обидва допустимими; сам Авраменко ссилаючись на ті самі правила українського правопису теж вважає обидва допустимими, але все ж любить “г” більше (Хакер чи гакер - експрес-урок - YouTube). А я не можу і не буду. Хакер. I will die on this hill.
  6. what makes him tick: TODO, нічого не подобається. Що його рухає/надихає, що у нього в середині, …
  7. underachiever: хай буде “відстаючий”. Хоча пригадую з ЗНО, що суфікси уч/юч обмежені у вживанні, правильніше ВІДСТАЛИЙ мені не подобається.
  8. junior high or high school: тут додаю драми замість дослівності, тому що все ближче до оригіналу, що я можу придумати, занадто канцеляристично: “я закінчую базову чи повну загальну середню освіту”..?
  9. Ms. Smith:
  10. I’m a smart ass
  11. doesn’t like teaching: оплакую невикористаний варіант від душі “ненавидить себе, дітей, і педагогіку”. Дуже оплакую.
  12. a refuge from the day-to-day incompetencies is sought
  13. a board is found: мається на увазі електронна дошка оголошень (BBS — Вікіпедія), дід форумів і прадід іміджбордів. Найцікавіше слово для перекладу. Якщо буде “борд” то збережеться драматизм оригіналу, але є шанси, що хтось спутає з іміджбордами. Коли вони були популярні, нормальні люди в Україні їх не називали ніяк, російською були варіанти “доска”, “бибиэска”4. “BBS” був би найпростішим виходом; “електронна дошка оголошень” знову ж таки канцеляризм. По контексту далі очевидно, що мова йде про якесь спілкування, тому хай буде “борд”, принесу в жертву однозначність і зрозумілість милозвучності.
  14. you bet your ass we’re all alike: як же складно підбирати такі речі. Умовні embeddings з ML тут були б в тему. “Дай мені щось на кшталт ‘авжеж’ тільки більш emphatical”. Попередня версія “Авжеж ми всі однакові!”
    1. You bet – phrases: базара нет, по любому, я вас умоляю
    2. Будьте певні5
    3. ЩЕ Б ПАК — СИНОНІМІЯ | Горох — українські словники
      1. Авжеж?6
  15. the beauty of the baud: Бод — Вікіпедія Нехай мій (і єдиний можливий) переклад буде всім настільки ж зрозумілим, наскільки мені був зрозумілий оригінал, коли я його читав вперше.
  16. profitteering gluttons

Hat tip to:

Random:

31 Dec 2022

Підсумки 2022

599 words, ~2 min read

Подія року: Маша подарувала велосипед!
Жах року: Вкрали велосипед :(

Підсумків 2021 року)1

God we had no idea how happy we were.

Now playing: Let the Sunshine In - Hair2

Досягнення року: Витримав майже без втрат і майже до кінця найстресовіший рік мого життя3. Став знову писати в блог і написав кілька довгиx постів про війну і не тільки
Настрій року: болю, вини, екзистенційної моральної кризисності кожної секунди, але в той самий час - впевнености та purpose
Зустріч року: TODO
Подія року: див. “жах року”
Жах року: див. “подія року”
Країна року: Україна
Антилюдина року: Путін і 71% його співвідчизників.
Місто року: Київ, який сильно болить щоразу, як про нього думаю
Слово року: “паляниця”
Подорож року: Франція, Данія.
Веб-сервіс року: Twitter. Flightradar24, liveuamap
Колір року: темно-червоний, або чорний.
Запах року: котів, своїх та чужих
Новина року: про звільнення Херсону!
Книга року: Книга «Недержавні таємниці» Віктора Ющенко; півтора романи Стівена Кінга + перечитував все підряд, що писав Peter Watts (Rifters trilogy і т.п.).
Фільм/серіал року: Twin Peaks (перші півтора сезони)
Media N.O.S.: Bob Gymlan’s відео про Бігфута; “Сводки” команди CITeam на каналі Майкла Наки.
Пісня року: Вперше в житті нічого нового в голову не приходить. Нехай Стефанія, яку слухав двічі, та Trenulețul, яку слухав раз шість.
Заклад року: кафе через парк неподалік від квартири в Лейпцигу4; Mensa Lohmannstraße.
Напій року: “эмоционально вставляющий чай”: Turkisch Earl Gray з цукром, лимоном, імбирем, ехінацеєю, мʼятою
Їжа року: суші, “сира яєчня”
Транспорт року: велосипед; і знову Bens Express Kyiv ↔ Leipzig

Побажання собі на 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 рік:

Перемоги. Побачитися з рідними та друзями, які в Україні зараз, побувати в Україні самому. Знайти знову той спокій, який в мене був в перші два місяці цього року. Зрозуміти та вирішити питання зі здоровʼям, які нещодавно зʼявились, та знайти свій дзен з тим, що стало їх причиною. Як і минулого року - знайти свій sustainable дзен з людьми та спілкуванням з ними. Навчитися регулювати, куди направляю свою увагу і свою енергію, і навчитися істинно визначати, щО є важливим зараз і вартим моєї уваги і енергії.

Ціль на наступний рік:5

  • написати хоча б дві наукові роботи, і взагалі трошки більше Academia
  • закінчити перші два семестра магістратури і почати писати магістерську

Ну і вічнозелене: Продовжити сон, спорт, медитацію – ЦЕ ПРАЦЮЄ. (x6)

(У)


  1. Так, вирвано з контексту - my blog my rules. ↩︎

  2. “The cast of Hair performs Let the Sunshine In at the Marriage Equality Rally in NYC May 17, 2009.” ↩︎

  3. Очевидно це одна тисячна від того, наскільки адом це було для середнього українця. Є за що бути взячним Богові та Всесвіту безумовно. Але Господи. Недавно робив календарик з хронологією аду цього року - пишаюсь тим, що діагностована депресія та проблеми з тиском, шкірою, запамороченням і тонною іншого почались тільки під кінець року. ↩︎

  4. (ще раз) ↩︎

  5. Цілі з минулого року:

    • Більше писати/створювати не важливо чого (пости, бібліотеки на Github, малюнки, вірші), але make an effort, умовно пости про PKM в блог а не короткі нариси про окремі деталі (хоча краще вони, ніж взагалі нічого). Є!
    • Навчитися підтримувати спілкування з людьми навіть при жорсткій зміні shared context (how do we talk to each other if there’s no watercooler anymore?…). Згадати дзен Мерзебургу і організовувати речі. Більше спілкуватися з людьми особисто та через відеодзвінки (.. або хоча б просто по телефону), менше тексту. Коли почалась війна, було ДУЖЕ БАГАТО саме цього. Але десь з травня everything is back to normal sadly.
    • Більше свіжого повітря, подорожей, спонтанності, легкості, не економити свою енергію з ціллю потім витратити її на лежання в ліжку як не дивно, з цим теж значно краще, ніж минулого року.
     ↩︎
04 Jun 2022

My custom keyboard layout with dvorak and LEDs

3439 words, ~13 min read

Intro

My keyboard setup has always been weird, and usually glued together with multiple programs. Some time ago I decided to re-do it from scratch and this led to some BIG improvements and simplifications I’m really happy about, and want to describe here.

Context: I regularly type in English, German, Russian, Ukrainian, and write a lot of Python code. I use vim, qutebrowser, tiling WMs and my workflows are very keyboard-centric.

TL;DR: This describes my current custom keyboard layout that has:

  • only two sub-layouts (latin/cyrillic)
  • the Caps Lock LED indicating the active one
  • Caps Lock acting both as Ctrl and Escape
  • things like arrow keys, backspace accessible without moving the right hand
  • Python characters moved closer to the main row
  • UPDATE Feb. 2023: Added numpad keys on level5! But not level5 itself. For now, -option 'lv5:ralt_switch_lock' to setxkbmap works. For an updated picture, see the github repo.

It looks like this1: kl_cut.png

and is available on Github.

(Read More)

26 May 2022

Three stories

932 words, ~3 min read

Three in-the-trenches-type stories. First two happened when I was a Werkstudent, third one when working full-time.

Bachelor’s thesis

Native language identification on english tweets.

In: english-language tweets. Things like tokens, length, punctuation, and other typical features.
Out: in which geographic area (US, India, Russia, …) does this person live, as a proxy of his first language.

Decided to try using Tensorflow tf.data and tf.estimator for that, why not learn something new.

My very first version performed incredibly well. There had to be an error somewhere. There was.

Due to my unfamiliarity with the libs I left the lat/lon in the input data. And the network learned to predict the country name based on lat/lon instead of native language identification.

Most interesting bug in my career

I was trying to train a language model and see what happens if random words in the training data are replaced by garbage tokens.

So with a certain probability a sentence was picked, in it with a certain probability a token was masked or replaced by random text. So picking some sequences and in them randomizing a token with a certain probability.

In the town where I [PREDICT_ME] born, lived a [GARBAGE], who sailed the sea.

Training LMs is hard, my dataset was HUGE, and training took days/weeks.

Randomly sometimes on day 2-3-4 training crashed, with a nondescript error, or sometimes it didn’t and training went on.

And I think it was TF1 and outputting the specific examples that made it fail was nontrivial, though I don’t remember the details.

Debugging it was nightmarish. And running a program that runs for a week and SOMETIMES crashes and you have to start again was very, very frustrating.

The cause:

  1. In one place in the code, I tokenized by splitting the sentence by whitespaces, in another one - by spaces.
  2. In the infinite-billion-sentences-dataset, TWO contained single double-spaces.
  3. The dataset is shuffled, and sooner or later we got to one of these sentences. When split, we got a token with length 0:
    >>> "We all live in a yellow  submarine".split(' ')
    ['We', 'all', 'live', 'in', 'a', 'yellow', '', 'submarine']
    
  4. If randomization decided to randomize one of these sentences and in them SPECIFICALLY the '' token, everything crashed.

For this to happen, the randomness gods had to give a very specific set of circumstances, low probability by themselves but likely to happen at least once during a week-long training.

Quickly creating a synthetic-but-human dataset

I’m really proud of this one.

The problem

Given: 10 example forms. Mostly consistent ones, containing a table with rows. Some rows contain text, some contain signatures, all by different people. The forms themselves were similar but not identical, and scan quality, pen colors, printing etc. varied.

Task: detect which rows and cells have signatures. Rows might have gaps, rows could have text but no signature. And do it really fast: both providing the proof of concept and the runtime of the network had to be quick.1

Problem: you need data to evaluate your result. … and data to train your NN, if you use a NN. You need this fast.

Attempt 1 - vanilla computer vision

I tried to do vanilla computer vision first. Derotate, get horizontal/vertical lines, from them - the cells, and see if they have more stuff (darker color) than some average value.

It failed because the signatures and text belonged people filling hundreds of such forms per day - the signatures and text could be bigger than the row they’re on. You never knew if it’s someone who wrote a shorter text, or text ’leaking’ from the rows above/below.

Attempt 2 - ML

I knew that Detectron2 could be trained to detect handwriting/signatures on relatively few examples. But again, we need evaluation data to see how well we do. 10 documents are too little.

.. okay, but what would evaluation look like?

I don’t really need the pixel-positions of the signatures. I need just rows/cells info. And filling forms is fast.

Crowdsourcing the eval dataset.

I wrote a pseudorandom numbers generator, that based on a number returns which cells and which columns have to be filled.

Bob, your number is 123. This means:

  • in document 1 you fill row 2,4,7 in column 1, row 3,8,9 in column 3, and sign row 2 and 7 in column 3. Save it as 123-1.pdf
  • in document 2, …

Zip the results and email them to me as 123.zip

Then 100+ forms were printed out and distributed. Everyone got a number and N forms and which numbers to fill.

Then they send us zips, from which we could immediately parse the ground truth. And we knew which cells contained what in each image without needing to manually label each.

The dataset was not too synthetic: we got different people using different pens, different handwriting and different signatures to fill the forms.2

That dataset then gave us a good idea of how well our network would perform in real life.


  1. This meant that we had to use only one NN, because running separate ones for detecting different things would have been slow. So we had to train a checkpoint that predicts ALL THE CLASSES, ergo we couldn’t train something to detect handwriting using another dataset. (Using a NN to find signatures and using something else to find other classes would work, though.) Honestly I don’t remember that part well, but there were reasons why we couldn’t just train something to find handwriting on another dataset without generating our own. ↩︎

  2. Much better than we could have done by, say, generating ‘handwriting’ using fonts and distortions and random strings. ↩︎

04 Apr 2022

Euromaidan 3.5

3619 words, ~14 min read

That which can be destroyed by the truth should be.

(Litany of Hodgell) 1

“Almost no one is evil; almost everything is broken”.

(Litany of Jai)

простите за очевидное, но все-таки по поводу «плохих людей не бывает, бывают несчастные/те, кому плохо/озлобленные/которые не знают правду» и так далее.

так вот:

ПЛОХИЕ
ЛЮДИ
БЫВАЮТ

(@lizafocht on Twitter)

As I write this, it’s 1 month 11 days 22 hours since Russia attacked Ukraine.

If you asked me two months ago about the worst period in my life, the answer would have been immediate.

The worst time in my life and the best time in my life. It’s a miracle I’m alive, but it was a formative year, horrible, beautiful, scary, hard, surreal, it left scars and created the strongest memories I have.

If you asked this question now, it’s a tie between that time and, well, now. The last month, 11 days, etc.

And about the latter one, any positive sides I can find are either exceptions to problems the war itself created (“my family and friends are all alive, only few of them got seriously physically hurt”) or just don’t pass the smell test.

Ukraine is united as never before - nice. Would I take the “Ukraine is as divided, fragmented and unstable as ever, but there is no war” option? Yes, in a heartbeat.

As I write this, the consensus on Twitter is that the Battle of Kyiv™ is over. I like this summary by Tomi T Ahonen, good storytelling and mostly factually correct.

As the danger to Kyiv diminished about 2 weeks ago, I started analyzing less and breathing more.

My brain started to work through a backlog of emotions and questions like “What does it mean now?

This post is not about a specific video. This post is about how researching it made me realize what should’ve been clear weeks ago.

At some point you have to stop and think whether gathering more information is likely to be useful.

This post is how about I missed that point.

(Read More)

27 Mar 2022

Євромайдан-3 - часть III

3344 words, ~13 min read


Этот пост, превратившийся внезапно в серию постов, о том, как я видел и чувствовал войну. Живу в Германии уже несколько лет и был тут в ночь на 24.02.2022, в Украине осталась вся моя семья и много друзей.

Пишу для себя, все имена и события вымышлены и не имеют ничего общего с реальностью, кто тут нашел себя и не хочет себя видеть - напишите мне.


Intro / a night to remember

2022-03-27-095424_553x441_scrot.png (Art by Eugene Anatsky1)

Тут будет хронология самой запоминающейся ночи моей жизни. В деталях, потому что у меня плохая память, а сохранить это мне кажется важным.

“Щоденник | The Kyiv metro is open and the Moscow stock market is closed”

Когда стало понятно, что все плохо, я создал канал в Телеграме.

2022-03-25-021733_449x146_scrot.png

С самого начала я знал, что я хочу использовать его как дневник и бросать туда интересные мне вещи. И что не хочу быть источником информации для кого-либо (и связанной с этим ответственности особенно не хочу.)

Читал в те дни я половину Интернета, и канал репрезентативный срез той половины. Что-то могло попасть в канал потому что, например, …

  • я верю, что это правда 2022-03-27-031127_448x166_scrot.png
  • пока не знаю, важно/правда это или нет, но хочу его сохранить на случай, если окажется, что да
    2022-03-27-031524_450x167_scrot.png
  • очевидная неправда и/или пропаганда, но она о чем-то говорит
    2022-03-27-031752_447x413_scrot.png
  • мне интересно, что конкретно ресурс Х решил написать именно это
    2022-03-27-031107_450x167_scrot.png
  • это яркий штрих или просто сообщение которое передает дух этого времени
    2022-03-27-032100_440x330_scrot.png 2022-03-27-094515_436x285_scrot.png
  • это смешно
    2022-03-27-094415_647x357_scrot.png

(Read More)

26 Mar 2022

Євромайдан-3 - частина друга

1910 words, ~7 min read


Этот пост, превратившийся внезапно в серию постов, о том, как я видел и чувствовал войну. Живу в Германии уже несколько лет и был тут в ночь на 24.02.2022, в Украине осталась вся моя семья и много друзей.

Пишу для себя, все имена и события вымышлены и не имеют ничего общего с реальностью, кто тут нашел себя и не хочет себя видеть - напишите мне.


Це продовження першої частини, де є контекст. Якщо коротко, суть постів - спогади і аналіз останнього місяця війни. Ціль виключно “виписатися” мені та якось зберегти деталі, хаос, невизначеність та відчуття безсилля, коли на моїй Батьківщині починається війна, я - у Лейпцигу, зрозуміло, що відбуваються жахливі речі, але часу подумати та проаналізувати ні в кого ще не було.

Тут писатиму про знакові для мене місця в Інтернеті, які багато читав.

Джерела інформації

70% них або пропаганда, або диванні аналітики. І перші, і другі були мені цінними або цікавими. І вони писали про вибухи в Києві десь за хвилин сорок до того, як проснулись офіційні джерела, за що їм вдячний.

Цей список і описи передають мої спогади і джерела так, якими вони були тоді.

Зараз читаю трошки інші речі і значно менше. Інформаційна війна стала серйознішою, свідомої дезінформації стало більше, а джерела, які допомагали перед початком, не обов’язково гарно аналізують війни, що вже почалися.

І мої потреби теж змінилися. Мені такий рівень деталізації та шуму вже нецікавий і непотрібний. (Вічне питання “а навіщо ти це читаєш?” зараз не має такої однозначної відповіді, як до початку війни.)

Твіттер

Стабільно зі мною в часи криз. Очевидно, в найбільшій кризі в моєму житті він теж був присутнім, і 80% інформації я отримував звідти.

Сам пишу туди вкрай рідко, і зараз мій профіль все ще виглядає так:

2022-03-27-014255_602x891_scrot.png

(Read More)

24 Mar 2022

Євромайдан-3 - часть I

2927 words, ~11 min read


Этот пост, превратившийся внезапно в серию постов, о том, как я видел и чувствовал войну. Живу в Германии уже несколько лет и был тут в ночь на 24.02.2022, в Украине осталась вся моя семья и много друзей.

Пишу для себя, все имена и события вымышлены и не имеют ничего общего с реальностью, кто тут нашел себя и не хочет себя видеть - напишите мне.


Окей.

Я не знаю, почему я чувствую такую сильную потребность об этом написать. Особенно недели спустя.

В свое время я написал два поста, на украинском, во время Майдана.

Они были прямым способом выразить много сильных эмоций тут-и-сейчас. Этот пост – тоже способ выразить эмоции, более глубокие и менее острые, но не менее сильные. И будет больше аналитическим и ретроспективным. Но его главная цель однозначно не в документировании и не в анализе.

(Read More)

21 Jan 2022

Some things I learned at BxE

1973 words, ~7 min read

Prologue, nostalgia and oversharing

I worked at BxE for 2 years and 9 months, first part-time as Werkstudent, then “Junior researcher”1 then finally “Machine learning engineer”.

This was my first “real” non-internship full-time job, first contact with German work culture and then there was the usual “only in a startup you can get 5 years of experience in 1 year” - it was an adventure and I learned a lot.

I love the German phrase “Zwischen den Jahren”2 (lit. ‘between the years’), the time between Christmas and the New Year, for me always a time of limbo3 and especially reflection. Even more so if the ’time between years’ coincides with the time between jobs, with my last day at BxE being the 17.12.2021 and the next one starting on 01.01.2022.

A very specific kind of emptiness, not “I’m on vacation” but “I don’t have a job, I have no commitments or duties neither to my last workplace, nor to the upcoming one; I don’t even need to look for a job, there’s nothing I ‘should’ be doing”. Comparable to “I’ve just finished my final school exam, regardless of the results I’m as free as I’ll ever be until university starts”.

I spent the first week of that time sleeping, then had a lot of quality time with family and friends, and missed the traditional reviewing/thinking that I usually do at the end of important phases. There was no analysis and synthesis of the ’lessons learned’, not even diary-style bullet points. I thought I’d just forget about it and live my life, but nope.

Still it kept eating me, keeps eating me, the way unfinished business and disconnected memories that desperately want to be analyzed eat you - and 21 days in, I don’t think it will shut up, so I’ll give in.

Follows a rough list, in the order I remember them. 4

Things I learned how to do better

Soft skills

  • Presenting
    • Both “how to effectively create slides” and “how to tell a story”
    • Graphs are awesome
      • Bonus points if they are easily reusable5
    • How to pick an appropriate abstraction level when explaining stuff
    • If I attempt to convey less, more gets understood at the end.
      • Especially in low-shared-context larger meetings or sprint reviews. High information density means everyone gets lost on slide #3.
  • Mentoring / teaching / supporting
    • Mentoring a smart junior colleague was awesome and really satisfying, not sure who of us learned more
    • Still proud of “This is a series of tickets to learn $internal_tool, I’ll help you; please write the tutorials as you go”
  • Communicating results and probabilities
    • Often it’s better to not communicate intermediate results or low-probability assestments
    • Make it as hard as possible to misunderstand you, even if the listener really wants to

Automatic document processing in Real Life

  • Scientific papers and scenarios in ML tutorials live in a world where you rarely have:
    • street names containing months & dates, people named like “Christian Thomas”
    • tables in invoices showing incredible diversity and creativity and interesting design decisions
    • 50 annotation types, half of which overlap with each other
      • An ADDRESS prolly contains a STREET_NAME, and now you can’t train both together :(
    • “I had this invoice in my pocket, then my dog chewed it, yes these are traces of blood don’t ask where it comes from”
  • Matching names/address with bad OCR to rows in databases compiled from multiple sources and OCR engines
    • Whatever str., Whateverstr., Whateverstraße, Whatever Straße, WhaIeveraBe, W̵h̶a̶t̴e̴v̶e̴r̴ ̶S̵t̷r̶a̵ß̷e̶, W̴̱̩̖̎͑ḧ̵͔̜́̌ą̸͉͌t̴̠̪̊̾͠e̷̖̥͌̇͗v̷͓͖͂̒ĕ̶͚̍r̴̳͊͝ ̶̯̲͔̄S̴̻̍̈́̾t̷͇͋̾r̵̡͂̓̏a̸͍͕͑͗̔ß̴̣́ę̸̥̠̌͌̆
    • Our Lady in Whatever General Hospital, OLWGH, W.G.H., OL-W. General Hospital
    • … human creativity knows no bounds!
  • Measuring how changes in things like OCR or text flow influence performance of already trained models
    • train a network on data with bad OCR, improve OCR, your network now performs worse. Cry.
  • NER F-Score metrics are only one part of the picture!

(Read More)

21 Jan 2022

Підсумки 2021

547 words, ~2 min read

– The same procedure as last year?
– The same procedure as every year! 1

Now playing: “И вновь продолжается бой, и сердцу тревожно в груди…”

Досягнення року: майже повністю вийшов зі сфери сервісів Гугл! + Звільнився з (по суті першої) роботи і перейшов на другу2.
Настрій року: постійного неясного стресу, тиску і відповідальності; WORK HARD and STAY IN BED THE REST OF THE TIME, UNABLE TO MOVE; нездатності знайти баланс між потребою в спілкуванні, нездатністю це робити онлайн, відсутністю сил/контекстів щоб це робити ІРЛ, і перманентним фоновим відчуттям вини за все вищезгадане
Зустріч року: “Дядя Сережа, Давайте вы выберите покемона на день рождения а я его нарисую как только смогу”
Подія року: Маша подарувала велосипед!3
Жах року: Вкрали велосипед :( А якщо серйозно - пожежа в4 костелі під час якої згорів5 орган6
Країна року: Україна
Місто року: Лейпциг!!!! Цього року з трьома чотирма окличними знаками!
Слово року: Corona-Warn / Дій вдома / тій фОтме 7
Подорож року: літня, осіння і особливо зимня поїздка додому
Веб-сервіс року: Fastmail + Coronavirus charts8
Колір року: приємний помаранчево-кремовий
Запах року: спирту, сливовиці, бензину, алое вера, у кожного магазину свій
Новина року: про одну конкретну чергову можливу довготермінову поїздку
Книга року: The Culture Map (Erin Meyer) + Permutation City
Фільм/серіал року: Star Trek Enterprise
Media N.O.S.: Дуже багато подкастів! Lore, Old Gods of Appalachia, SCP Archives. Ще мене дуже вразила серія розповідей Introductory Antimemetics з SCP Foundation
Пісня року: Voltaire - The Trouble with Tribbles (Song Only) - YouTube; just one snack - YouTube; Let the Sunshine In - Hair - YouTube (конкретно те відео)
Заклад року: кафе через парк неподалік від квартири в Лейпцигу
Напій року: Чай, заварений в молочнику (або в паперовому пакетику, куди його можна насипати). На другому місці “чай” з хризантеми
Їжа року: свіжеспечені булочки + Lemon curd salmon recipe
Транспорт року: мій власний (другий за цей рік…) велосипед!

Побажання собі на 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 рік:
Знайти свій sustainable дзен з роботою, стресом, сном, кофеїном, ритмом дня або його відсутністю. Знайти свій sustainable дзен з людьми та спілкуванням з ними. Знайти свій sustainable дзен з енергією, її джерелами, та способами її витрачати.

Ціль на наступний рік:

  • Більше писати/створювати не важливо чого (пости, бібліотеки на Github, малюнки, вірші), але make an effort, умовно пости про PKM в блог9 а не короткі нариси про окремі деталі10 (хоча краще вони, ніж взагалі нічого).
  • Навчитися підтримувати спілкування з людьми навіть при жорсткій зміні shared context (how do we talk to each other if there’s no watercooler anymore?…). Згадати дзен Мерзебургу і організовувати речі. Більше спілкуватися з людьми особисто та через відеодзвінки (.. або хоча б просто по телефону), менше тексту.
  • Більше свіжого повітря, подорожей, спонтанності, легкості, не економити свою енергію з ціллю потім витратити її на лежання в ліжку

Ну і вічнозелене: Продовжити сон, спорт, медитацію – ЦЕ ПРАЦЮЄ. (x4)

(У)


  1. “Dinner for one”, of course ↩︎

  2. (+ навчився працювати без пʼяти екранів в майже будь-яких умовах!) ↩︎

  3. А ще я вакцинувався ↩︎

  4. тому самому ↩︎

  5. той самий ↩︎

  6. Пожежа в костелі в Києві: пошкоджений унікальний орган ↩︎

  7. (у виконанні дами зі стійки реєстрації WizzAir в Берліні) ↩︎

  8. The blog Don’t Worry About the Vase gets a honorable mention as my main source for corona stuff this year ↩︎

  9. My journey in PKM, Part 1: things I tried - serhii.net ↩︎

  10. весь DTB ↩︎