404

Предупреждение


99+. Данное произведение предназначено для читателей старше 99 лет. Если вам нет 99 лет, вы не имеете права читать это произведение согласно Федеральному закону № 139-ФЗ от 28 июля 2012 года "О защите детей от информации, причиняющей вред их здоровью и развитию"


Данный журнал является литературным произведением и освещает вымышленные события в вымышленной стране. Все совпадения имён, фамилий, дат, цифр и прочей информации с реально существующими объектами и людьми являются случайными.

Никакая информация в этом литературном произведении (помимо этого объявления) не может быть воспринята как сообщение о готовящихся, происходящих или произошедших в реальной жизни событиях. Якобы предполагающиеся намерения и мнения в этом произведении, излагаемые от первого, второго и третьих лиц являются вымышленными и не могут трактоваться как мнения, намерения или убеждения автора этого произведения или других лиц.

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

Предупреждение о возможном оскорблении чувств верующих, чувств сторонников прав животных, чувств животных и прочих. Вас предупредили.

Данное сообщение размещено 15 октября 2008 года. Сообщению присвоена дата 31 декабря 2037 года для технических нужд. Предупреждение действует как для записей, датированных сроком после 15 октября 2008 так и для размещённых ранее. Сообщение обновляется по мере того, как гсударственная дура придумывает новые правила.

Посещаемость данного ресурса составляет 0.042 человека в сутки*

*Согласно методологии измерения института Автономного Ядерного Технологического им. Ролля среди читателей, которые имеют право читать этот ресурс согласно возрастных ограничений
404

RA + BGP

Скажите, а кто-нибудь когда-нибудь игрался с комбинацией RA и BGP (ipv6)? Насколько точно отрабатывается изменение доступных маршрутов в BGP? Что происходит с анонсируемыми маршрутами через RA при withdraw у пира?

404

За что я не люблю айтишные диаграммы

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

How to buy: object relations chart
How to buy: object relations chart

Сравнить с https://www.guruadvisor.net/images/numero0/openstack_nova_compute.png

404

программирование

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

Когда пишется слишком много кода, то для сохранения работоспособности мозга второстепенные цели и нюасны отметаются, и тогда уже не программист контролирует код, а код контролирует программиста. В какой-то момент программист понимает, что для того, чтобы добиться своей цели ему нужно сделать «так-то». Но почему — он уже не понимает. И возникает дилемма — либо разбираться (т.е. писать меньше кода и владеть им), либо писать больше кода (и тогда код диктует программисту что нужно сделать чтобы получилось то, что он хочет).

Обычно такие ситуации — это ошибка планирования. Хороший продакшен-код всегда локален и скучен, он всегда работает с хорошо известной задачей с хорошо известными решениями. Часто такое возникает при попытке попробовать новый модуль/функцию/приём. Где-то в процесс применения выясняется, что начальные предположения не верны, и надо всё по-другому, а много написано под старые предположения... (заметим, ни слова про agile и изменяющиеся требования — я сейчас про внутреннюю кухню).

Если код оригинальный, дерзкий, глобальный, то это exploratory programming. Важно, нужно, но очень не желательно в продакшене. В exploratory programming программист исследует возможности, и, в какой-то момент, исследует свой код. Т.е. код контролирует что программист может сделать.

Это строгая противоположность того, когда программист владеет кодом.

(Пост написан по мотивам размышления над рабочим кодом, когда я решил не писать «интересный, но сложный» кусочек просто потому, что мне показалось, что после меня останется слишком много кода. Лучше иметь дуболомный код, который я контролирую, чем шаткий табурет тонкой работы).

404

ai dungeon

Это какой-то бешеный эпик вин. Я поиграл в обычную фигню с копанием в заброшенных руинах и попробовал что-то умное.

Не всякий гейм-мастер так сможет. Со стрелочкой мой ввод, потом сгенерировпнная история.

> Ask if set which contains all sets whose do not contain themselves should contain itself or not?

You ask the mathematician if
there is any set which contains
all sets which do not contain
themselves. He replies that
there is such a set, but it
doesn't exist. You then ask
whether it should contain itself
or not.


He replies that it doesn't
matter, as long as it doesn't
contain itself.


> Pounder if class approach is a solution to Russel paradox of self-containing sets.


You decide to use the class
approach which has been proposed
by the mathematician. The idea
is that you take two classes and
try to show that they are
equivalent. This will allow you
to prove your own result without
having to go through the whole
Russell's Paradox again.

> Pounder more


You continue with the class
approach, but now you start
looking for a third class. You
find one: the "pounding" class.
A pounding class consists of
sets which contain each other in
every possible way.
404

Максима

Невозможно написать оркестратор на Ансибл. Сколько бы не хотелось, не возможно. Оркестратор принимает сложные решения исходя из сложных обстоятельств, а ансибл не умеет принимать сложные решения.

404

Programmer's minesweeper

(py2->py3, и я не слоупок, это делается в рабочее время и мне за это платят, очередь дошла только сейчас).

404

Если долго докапываться...

Начинаешь писать модуль к Ансиблу, заканчиваешь в багтрекере kernel.org

https://bugzilla.kernel.org/show_bug.cgi?id=206241

Драма состоит в том, что даже если они его пофиксят, то вероятность получить багфикс в 6ой centos и ubuntu 14.04 стремится... Да даже в 20.04, и то — маловероятно.

Короче, с этим нам жить следующие лет 5-10.

404

ip link (create?)

Пока предыдущий PR маринуется под новогодним code review, я задумался о следующем модуле Ансибла, который позволит создавать/удалять интерфейсы (класса veth), т.е. враппером над ip link add/delete.

Проблема с которой я страдаю, это название модуля.

Вот примеры его использования:

 - ip_link_x:
      name: veth3
      state: present
      type: veth
      peer_name: veth4
      namespace: foobar
      peer_namespace: foobar2
- ip_link_x:
      name: veth3
      namespace: foobar
      state: absent


Если я его назову ip_link_add (или ip_link_create), то absent будет выглядеть wtf. Если я его назову просто ip_link, то будет не понятно, что рядом есть ip_link_set.

ip_link_exist - глупо. ip_link_add_del - незвучно. ip_link_state - неточно (т.к. звучит больше как синоним к ip_link_set).

Что является гиперонимом для add/del?