будни

Только что записывал подводки для нового эпизода, который выйдет завтра. Не сказать о войне — невозможно. Сказать «война» — нельзя — подставлю команду, она вся в Москве.

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

А тут нужно назвать происходящее как-то, кроме, как «идёт война». И сделать это элегантно и уверенно. Не выходит такой цветочек.

Вчера власти заблокировали Дождь и Эхо Москвы. Эхо прекратило вещание. 30 лет канал работал, только во время путча 1991 его выключали (когда было лебединое озеро по телеку), и вот вчера выключили. А сегодня заблокировали The Village! Господи, The Village! Деградация полная.

Ребята в чате вспоминают свой опыт корпоративов и накидывают очень крутые варианты. Вот такой от Игоря, например:

«Мы устраивали корпоративы в формате недельных конференций. Параллельно шли два трека докладов. Один трек на тему развития бизнеса, второй трек на тему разработки. Также приглашали сторонних спикеров. В подобном формате можно было спокойно работать и принимать участие в конфе. Каждый день конференции начинался совместным завтраком и неформальным общением в баре.»

Провели поверхностный анализ и поняли, что речь не о тупом алгоритме, в котором «читал Медузу — лови ещё пачку статьей Медузы». Во всяком случае (по данным GA), процент «новых пользователей» пришедших из suggestions равен среднему проценту «новых пользователей» на сайте.

Скорее всего, алгоритм следующий: определяем интерес человека (в случае аккаунта из скриншотов это общественно-политические новости) и выдаем ему новости по этой теме. Как у людей появляется Медуза — мне пока не ясно.

Нейросети. Магия.

Через несколько недель у нас большой запуск — технический перезапуск платформы онлайн-образования курсов подготовки к ЕГЭ Вебиум. Мы работаем над ним почти год и это большой и сложный проект, которым хочется хвастаться и делиться опытом.

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

Нам с Федей часто заказывают разработку медиа: в сентябре перезапускаем одно известное российское общественно-политическое издание и на днях начинаем работу над медиа для крупнейшего ритейлера.

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

- это и обычный сайт, в нем важно понимать, что подавляющее большинство просмотров будет с телефонов, а не с компьютеров, где обычно проверяют свой сайт сами редакторы:)
- и мобильные приложения — всё ещё удобнее иметь на рабочем столе иконку, это повышает открытия и прочитывания в десятки раз, ядровая аудитория;
- и разные системы доставки контента типа Instant Articles в Фейсбуке, Instant View в телеграме, Яндекс Дзен, Google News и другие — в них обычно нужно отдавать специальные RSS потоки;
- соцсети — чтобы не заливать посты в каждую соцсеть отдельно, а иметь единый центр управления полетами.

Сегодня я хочу поделиться советом про админку. Помню, мы произвели небольшой фурор в медиа-сообществе, когда в 2015 году рассказали про Монитор — внутреннюю админку Медузы. За годы он вырос в сложный и богатый инструмент, которым пользуется только одна редакция. К счастью, в 2022 можно получить 90% удобства и функциональности крутой медиа админки за 10% усилий.

Секрет в развитии headless CMS — это движки админок сайтов разной степени готовности. Помните про разделение на админку и пользовательскую часть? Речь ниже только о движке админки.

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

Яркий представитель первого класса, когда тебе дают сразу готовый продукт — это Contentful. Стартап стоимостью 3 миллиарда долларов, через админку которого управляют своими сайтами Disney, Atlassian, SAS и многие другие. Не удивляйтесь, крупные сайты компаний сравнимы с медиа.

На другом конце спектра — Sanity. Это серверное API и набор React-компонент, из которых можно собрать очень мощную медиа-админку буквально за несколько дней без участия бэкенд-разработчиков. Мы успешно использовали его уже в нескольких проектах для клиентов, горячо рекомендую.

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

Если хотите сделать новое медиа быстро и качественно или перезапустить существующее — обращайтесь ко мне, мы с Федей берем новых клиентов.

Покупать много дорогой техники не за свои деньги — тяжело эмоционально. Что, если ошибся и объектив не подойдет к камере, а карта памяти окажется слишком медленной? Что, если монитор не будет работать с заданным компьютером?

Раньше, покупка техники по работе приносила удовольствие. С каждым годом удовольствия чуть меньше.

Плохое планирование работы команды даже из 9 человек стоит дороже любой техники, а всё равно пугает меньше. Наверное, потому, что нет четкого point of no return.

Интересная идея — проверять кандидатов на собеседовании через чтение кода, а не через его написание.

Правда, мы с Федей просто не проверяем на собеседованиях технические скилы.

Наша идея в том, что умение проходить собеседования — это отдельный скил, владение которым плохо предсказывает способность работать. И проверять лучше то, что нас реально интересует — то есть умение разобраться в бизнес-задаче и решить её с помощью кода, который дешево поддерживать.

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

Поздравим главного редактора с первым коммитом!

Из руководства без github-аккаунта осталась только Галина Викторовна. Challenge accepted.

Готовил вчера отчет по техническому аудиту для одного нашего клиента. Хочу поделиться с вами абзацем, где мы объясняем трудности программирования на пальцах:

«Лапша в бизнес-логике». Бизнес-логика в приложении — это цепочка вызова команд. Эти цепочки часто содержат больше 7 шагов. Это больше, чем человек может уместить в голове. Чтобы решить эту проблему, люди описывают цепочки в одном месте, последовательно: одна строчка — один шаг бизнес-процесса (пример на руби). В нашем проекте, сейчас, это не так. Логика бизнес-процессов кочует из файла в файл. Пример: … — в попытке отследить бизнес-логику платежей мы «прыгнули» по коду 11 (!) раз. Это бесчеловечно. …

Мне очень нравится, что мы с Федей привлекаем экспертов себе в помощь. Я уже писал об Антоне Давыдове, но если вдруг пропустили — вот его канал в телеге. Кайфую каждый раз, когда делаю что-то вместе с Антоном.