Perplexity — отличная штука, даёт разгуляться.
Смешное
Scrrrrum!
Ну что, малёк. Время идет распустив паруса, и даже пиратам нужно адаптироваться к новым веяниям. А кто не адаптируется — отправится в короткую, но очень веселую прогулку по доске! Так что слушай и запоминай принципы гибкого пиратства, которые должен знать каждый уважающий себя моряк. Их лично придумали Джэк Рэкхем и Бартоломью Робертс где-то у берегов Ямайки.
Основные пррринципы
-
Опыт: Наш курс определяется не картой, а попутным ветром, удачей, и ретроспективой прошлых рейдов.
-
Три скрепы корабельного братства:
— Прозрачность: вся добыча на виду! Никаких тайных планов и спрятанных пиастров. Вся команда знает, что в трюме и куда проложен путь!
— Инспекция: дозорный постоянно смотрит в трубу! Верный ли курс? Все ли по плану? Нет ли британского фрегата в кильватере?
— Адаптация: увидели голландский торговый флейт на горизонте? Меняем курс, чтобы не упустить удачу! -
Итеративность и инкрементальность: Не ходим по морю годами. Работаем короткими рейдами. После каждого рейда — добыча, порт, ром!
Роли
Капитан
Главный на корабле. Прокладывает курс, иногда имеет каперскую грамоту и отвечает по ней перед короной. Записывает план в корабельный бэклог. Его хранит в сундуке мертвеца
Боцман
Отвечает за команду, хранит у себя сундук мертвеца с бэклогом, чёрными сторипойнтами и Кодексом пирата. Если рейд пойдет не по плану, или кто-то нарушит Кодекс, боцман найдет виноватых и пустит за борт. А кто останется в живых, будет завидовать мёртвым.
Старпом
Знает где у корабля гальюн и, если что, пробьет в рынду. При абордаже расскажет, куда бросать крюк и с какой стороны браться за мушкетон. Знает, сколько черных сторипойнтов раздать на рейд. Держись его, малёк, дольше проживёшь.
Команда
Ты её часть, малёк. Часть команды, часть корабля. Это мы, пираты, идём в рейд за добычей. Аррррр!
Рейд
Это наш выход в море за добычей. Выходим на 1–4 недели, так чтобы и добычу не упустить, и успеть, пока ты не сожрал все припасы. К концу рейда команда должна обладать добычей, готовой к делёжке и растратам. Главное правило рейда:
Раз курс намечен, никто его не меняет, пока трофей не будет взят!
Захватить другую цель на рейде можно, но только если мы уверены, что основной цели это не помешает.
Во время рейда на корабле происходят такие события:
Планирование рейда
Участвует весь экипаж корабля. Боцман достает бэклог из сундука мертвеца и передает капитану. Капитан указывает команде на самую жирную цель рейда в бэклоге.
Каждый член команды может высказываться об этой цели, якорь мне в горло!
Когда глотки пересохнут, Боцман передает Старпому чёрные сторипойнты из сундука мертвеца — столько, сколько Старпом запросит для рейда. Старпом отбирает из команды 15 человек, выдает им бутылку рома и раздаёт черные сторипойнты в соответствии со сложностью взятых пиратом на себя боевых задач. Боцман записывает все что произошло в План рейда.
Утренний развод
Каждый день на рассвете, на главной палубе каждый пират должен ответить:
— Что я сделал вчера?
— На что я готов сегодня?
— Что мешает моей пиратской удаче?
Боцман должен следить, чтобы пиратской удаче не мешало ничто! И распределять по справедливости оставшийся ром.
Обзор и делёж добычи
В последний день рейда, прямо перед закатом, по крику корабельного попугая «Пиастррррры!» команда вываливает на палубу всё, что удалось захватить и привести в товарный вид. Капитан определяет, выполнена ли цель рейда, затем дает Боцману указание выдать команде доли добычи, пропорциональные полученным при планировании черным сторипойнтам.
Пиратская ретроспектива
Сразу после дележа добычи, но до того как кончится весь ром, вся Команда, но без Капитана рефлексирует:
— что пошло как по маслу? (лихой абордаж, богатая добыча)
— что пошло ко дну? (карту подсунули кривую, два паруса порвали)
— что возьмем на следующий рейд? (новые пушки, трезвого штурмана)
Боцман записывает идеи и прячет их в сундук мертвеца. Корабль с командой отправляется в ближайший дружественный порт тратить награбленное и планировать следующий рейд.
Экономичные паттерны разработки
В продолжение предыдущего поста — да, было бы здорово, конечно. Но где бы тогда я находил вот такие экономичные паттерны разработки:
Экономим 2 килобайта
Если во фронт-энде нужна иконка, и она уже есть в каком-то из установленных модулей, плагинов, библиотек, или иных зависимостей — не нужно копировать иконку в свой фронт. Нужно использовать ту, что в библиотеке. Не важно, что разработчик библиотеки её может заменить, удалить, или вся зависимость окажется больше не нужна. Просто никогда ничего не обновляйте, и тогда иконка пребудет веки.
Экономим две минуты
Допустим у тебя есть модуль или плагин, который больше не нужен. Но в то же время есть задача в трекере, совершенно с модулем не связанная, но для неё нужно написать немного кода. Правильный порядок действий:
- Сотри всё что происходило в ненужном больше модуле.
- Вставь туда новый функционал.
- Описание и название модуля не меняй. Все равно никто не читает.
Экономим… что-то экономим
Определенно, это жемчужина моей небольшой и беспорядочной коллекции.
Нам нужно аяксифицировать кнопочки в Drupal. Чтобы события не навешивались повторно, используется once(), который добавляет элементу атрибут data-once="ajax". Но чтобы враги ничего не поняли, сделаем так:
- Кнопочки будем рендерить сразу с атрибутом
data-once="ajax"! - В коде JS первым делом удалим этот атрибут!!
- Скрестим пальцы и вознадеемся на правильный порядок исполнения и что вызов ajax-биндинга произойдет позже и не заметит удаленных атрибутов!!!
Возможно, таким образом пытались победить какие-то «гонки» в JS. Ведь, как известно, чтобы победить racing condition, нужно самому стать racing condition.
Вайб-кодинг
Доброе утро. Чат жопотэ, давай быстренько добавим мне в докер контейнер с постфиксом, чисто для отправки, и я пойду дальше работать.
…
Ок, днсы прописали, а чего конфиг такой странный, давай разбираться.
…
Это что опять за ошибка? Нет, я не буду брать готовое решение, мы уже три часа потратили. Чуть-чуть осталось, щас доделаем.
…
Нет, я не буду подключать сторонний сервер к уже настроенному постфиксу. Зачем мы тогда его настраивали?!
…
А это что… ладно, сам нагуглю.
…
Так, блин, почему твои днсы гугол теперь не принимает?!
…
Пойду спать, [censored]
Heisenbug
Today I learned:
Heisenbug — a bug that seems to disappear or change behavior when you add debugging output or diagnostics.
Гейзенбаг — баг, который исчезает или меняет поведение при попытке его обнаружить (добавить отладочный код или диагностику).
ну то есть с такими багами я конечно сталкивался, но не знал, что они так называются.
Иишница
Открываю телеграм, один канал:
— А вы используете ИИ?
— Да, мы используем ИИ.
— Да, но любите ли вы его так же, как его люблю я?..
Открываю другой канал: 25 промптов для улучшения народного хозяйства и обороноспособности страны.
Открываю третий, разработческий: 300+ сообщений о том, когда нас заменит ИИ, о его вкладе в борьбу с домашним насилием и мировую социалистическую революцию.
Захожу в комнату: жена обсуждает с коллегой, что лучше, дипсик или джемини.
И на завтрак у меня тоже была иишница.
Алиса, напомни пораньше лечь спать сегодня.
Slow Horses в коллекцию
Гэри Олдман продолжает жечь в четвертом сезоне.
— So, you're in charge of the rejects.
— They don't like being called that.
— What do you call them?
— The rejects.
— He was carrying this.
— Phone and wallet?
— Both Cartwright's.
— What the fuck do you need me for then?
— Formal identification.
— It's a bit of a challenge.
— Well, did he have any identifying marks?
— He used to have a face. That any help?
— Tattoos, scars, piercings?
— Now, how the fuck would I know? I make 'em wear clothes around the office.
Про front-end-тесты
Не могу заставить себя писать front-end-тесты.
Как только вижу что-нибудь вроде
it('renders the correct message', () => {})
немедленно возникает ассоциация с
it('puts the lotion on its skin')
И не дает работать.
The simplest organ
The mysteries of human consciousness and the unknowable nature of the brain, which is rubbish! The brain is the simplest organ in the body. It only has three bits. There’s the front bit, which is the bit you scratch when you come in at half one in the morning, and the person you live with says, "Where the fuck were you?". The middle bit, which tries to come up with the excuse. And the back bit, which plays the last song that was on in the pub.
© Dylan Moran
The X-Files 11
You're free to explore Uranus all you want. But we can't allow your kind to infiltrate the rest of the cosmos.
Во всяком случае комедийные серии у них по-прежнему забавные. В остальном — всё как в прошлый раз.
Good luck and good riddance!