будни

P.S. Android-пользователи жалуются, что у них вместо Unicode-символов 𝑥 (mathematical italic small x), 𝑐, 𝑢 и 𝑛 в тексте показывается вытянутый прямоугольник ☐. Так мы узнали, что в Android-ах (видимо, речь идет о системном Roboto) нет ключевых математических символов. Приземление в реальность.

Проблему можно починить, добавив в медузные шрифты нужные глифы (артдиректор в отпуске, дизайн отдел и так перегружен) или заменив красивые специальные буквы типа 𝑥 на обычные курсивные английские x. Так и сделали. Извините, что сразу не догадались.

Эдуард Лернер — папа моего школьного товарища, крутого безопасника Эмиля Лернера.

Эдуард Юльевич профессиональный математик. Он читал нам лекции (про случайные блуждания пьяницы домой) в летней математической школе Квант на берегу Волги, когда я был в 7 классе — это год 2004, наверное. С тех пор я от Эдуарда Юльевича ничего не слышал.

4 дня назад, в понедельник, на мою личную почту приходит письмо, где ЭЮ предлагает Медузе три математические задачи. Письмо вызывает ожидаемую ажитацию редакции в слеке. Самое крутое, что Катя Кронгауз мгновенно говорит, что это игра, а главред Ваня даёт добро. Катя заказывает иллюстрации, ЭЮ переписывает решения более простым языком и вот уже сегодня серьезные математические задачи на главной Медузы!

https://meduza.io/feature/2018/03/16/faktorial-programmy-navalnogo-i-neprilichno-dolgoe-pravlenie

TEAMWORK

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

Вы не поверите, специалист техподдержки спокойно рассказал, как устроена работа компании. Вся команда разработки живет в одном и том же продуктовом цикле. Если на момент написания статьи это были 3-4 команды по 2-3 человека, то теперь это могут быть 7 команд или больше. Да, документ описывающий цикл стал больше, но принципиальная схема осталась прежней.

Я по работе общался с сотнями техподдержек (о, сколько часов музыки я прослушал по PSTN) и эта впечатлила меня больше всего. На втором месте G Suite от Google (бывший Google Apps) — реально разбираются в этом монстре и технологиях, на которых он построен. Третье место занимает поддержка Apple Developer Program. Эти чуваки супер дружелюбные и если правильно пропитчить нужду могут сделать множество исключений из правил. Прямо как в России, закон строг, но можно договориться.

Хотите предложить услуги подрядчика - так и пишите, стесняться нечего; почти всем техдиректорам нужны внятные подрядчики в запасе

У движка «Валли» сложная судьба.

Три года назад Ярослав Кравченко (он тогда отвечал за фронтенд монитора, админки Медузы) за несколько дней запрограммировал «игру». В ней нужно было угадывать положение точки на картинке (обычно используется географическая карта). Это была одна из первых игр Медузы.

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

Данные хранились в mongo, настроить к ней бекапы мы забыли. В прошлом году сервер с этой базой сломался. Мы потеряли все «географические тесты», сделанные редакцией в течении несколько лет.

Сейчас произошло второе рождение этого движка. Модный react, наша стандартная админка игр на бутстрапе, postgres-база с горячим резервом, даже тепловая карта кликов читателей — всё дышит 2018 годом.

В ролях: Витя Ходак — дизайн, Гоша Девяткин — программирование, Лёша Прилепский — менеджмент, Илья Красильщик и Саша Поливанов — редакционная поддержка.

https://meduza.io/games/gde-samaya-deshevaya-kvartira-v-rossii-a-samyy-vysokiy-dom

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

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

Провели сегодня мега-совещание про работу разработки с дизайнерами. Покажу вам, какое письмо я разослал по окончании встречи.

Размер и сложность продукта растет, старые процессы уже не выдерживают. Копится недовольство с обоих сторон и вообще, нужно было поговорить.

Резюме совещания:

про макеты:
- постепенно создаем один мастер-макет, в котором отрисованы все форматы медузы и в который добавляются новые, перестаем использовать отдельные маленькие макеты как источник правды;
- с помощью этого мастер-макета постепенно уменьшаем количество разных элементов, выносим все общие элементы в стайлбук;
- если в новых форматах есть неочевидные моменты (заголовок изменился на 1 пункт, так просто не заметишь) — указываем эти комментарии прямо рядом элементом, на полях артборда;
- этот мастер-макет храним в версионированном хранилище с возможностью просмотра диффов и автоматическими уведомлениями о правках (скорее всего github + скетч-плагин, но если найдем хороший SaaS — то вполне может и на него сядем);

про совместную работу:
- задача разработчиков — в процессе разработки (чем раньше тем лучше, идеально во время приемки) найти недорисованные/недодуманные моменты и сказать о них дизайнеру. Например, если не учтена ситуация, когда одно из полей пустое — не очевидно, какие отступы делать в этом случае. Дизайнер дорисует эти кейсы и/или добавит в макет комментарий, объясняющий логику;
- если что-то очень сложно сделать на платформе (белая тень, хитрый блюр, etc.) — обсуждаем это с дизайнером. Что нужно в разговоре? 1) объясняем что именно сложно сделать и почему 2) предлагаем решение, как вы думаете можно упростить/сделать по другому 3) приходим вместе к компромиссу. Никто не требует делать безумные хаки, которые дорого поддерживать и которые ломаются с апдейтом чего-нибудь. Все мы хотим классный продукт и дизайнер мог просто не знать/забыть о платформо-специфичной вещи;
- вывод: Не стоит допридумывать то, что не описано/не нарисовано. Нужно договариваться. Молча делать отлично от макета запрещено;

В заключение: разработчики — полноценные члены продуктовой команды. Думайте о продуктовых фичах, задавайте вопросы, предлагайте идеи. Не все они будут реализованы, часть задвинем в дальний ящик и никогда до них не доберемся. Это нормальный рабочий процесс — то же происходит с идеями редакции, дизайнеров и даже Ильи. Мы (разработчики) обладаем уникальным знанием того, как это всё будет реализовано в конечном счете. Без нашего участия сделать классный продукт невозможно.

Теперь о том, где, как и с кем это всё обсуждать.

1. О каких-то мелких непониманиях по дизайну стоит писать в личку Насте, Вите и Насте; можно созвониться-пошарить экран и тд, если текст не решает;
2. О крупным вещах, которые хочется обсудить с командой и с дизайнерами — пишите прямо в #dev или в проектный канал типа #dev-prodano
3. Если это тема в проектной работе, которая требует осмысления и обсуждения — круто завести для неё карточку в трелло-доске проекта и заменшенить в комментарии всех причастных. В трелло обсуждения не теряются и можно посмотреть толком историю переписки по конкретному вопросу.

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

-----

А как вы строите работу дизайнеров с программистами? Делитесь в @ctodailychat, интересно послушать ваши истории.

Отдел разработки Медузы ведет неравный бой с эмбедами фейсбука, инстаграма и твитера уже третий год. Постоянно что-то меняется и ломается.

Раньше пальму первенства держал фейсбук, теперь её уверенно перехватил инстаграм. Вот о чем говорит половина отдела разработки в пятницу вечером.