• (Не) предлагай

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

    Пример. У вас нет задач, и вы спрашиваете менеджера, чем заняться. Может быть, менеджер на звонке, у него что-то горит, и прямо сейчас искать задачу некогда. Но открыто сказать “я не знаю” он не может, потому что это вроде не круто. Поэтому к вопросу надо добавить встречное предложение: могу эту задачу и вон ту. Что лучше? Менеджеру остается только выбрать из двух.

    Другой пример. Спрашиваете у тимлида (или кто там у вас), какой выбрать технический подход к задаче. Будет невежливо задать вопрос и тупо ждать. Очевидно, тут нужно исследование. По каждому варианту соберите плюсы и минусы, напишите короткий текст и уже с этим идите к тимлиду (или к кому там у вас).

    В общем случае это называется “сделать домашку” — заранее выполнить часть работы.

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

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

    Еще пример. Ребенок прогуливает школу из-за конфликта со сверстниками. Ему проще согласиться с родителем, что это из-за лени, чем объяснить конфликт. Так родитель остался не в курсе проблем.

    Поэтому: иногда предлагай, а иногда не предлагай. По ситуации.

  • Быстрее

    Совет тем, кто что-либо организует: делайте всё быстро.

    Как проходит школьная линейка? Дети с родителями пришли и ждут. На сцене суетятся, ходят туда-сюда. Начинают с задержкой в двадцать минут. Слово директору. Слово завучу. Слово заслуженной учительнцие. Слово депутату-спонсору-единоросу. Слово ветерану. Потом, худо-бедно, начинается сценка про пропавший огонь знаний.

    Как проходят спортивные соревнования? Дети с родителями пришли и ждут. Все на месте, абсолютно все. Нет, тренер ходит с листочком взад-перед. Начинают с опозданием в полчаса. Слово директору. Слово заслуженному тренеру. Гимн России. Потом, худо-бедно, начинаются соревнования.

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

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

    Начинать всегда вовремя. Многие проблемы можно решить в полете: менять номера местами, что-то пропускать. Для этого нужен помощник и находчивость. Если ни того, ни другого нет, организовывать что-либо ещё рано.

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

    Быстрее надо, быстрее.

  • Заказные письма

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

  • Цвета ячеек в таблицах

    Эта заметка для тех, кто работает в Экселе и Гугло-таблицах. Прочтите обязательно.

    Итак, вы вбили в табличку данные, например сведения о заказах в вашем магазине. Выглядит прекрасно:

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

    Выделим желтым тех, кому не удалось дозвониться:

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

    Я думаю, понятно, что так делать не надо. Знаю, все так делают, и я сам до недавнего времени тоже. Но это не повод продолжать плохую практику. Объясню, в чем именно проблема и как вести табличку правильно.

    1. Логику цвета нужно угадывать. Мысль о том, что желтый — внимание, а красный — опасность, основана ни на чем. Критический заказ вполне может быть оранжевым, а ошибка доставки — синим (случай из практики). Если вы добавили цвет, приходится объяснять, что он значит. Эта семантика тупо теряется.

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

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

    4. Личный фактор. Меня бесит, когда в таблицу приходит кто-то левый и начинает красить. Крась у себя. Перед тем, как что-то отмечать цветом, хотя бы спроси, как лучше поступить. Цвет – последнее, что я посоветую.

    Вот что надо сделать, чтобы избежать цветового хаоса.

    • Завести отдельное поле “статус” или “состояние”. В нем писать простое емкое слово: сборка, доставка, получено, ошибка. Все таблицы поддерживают автодополнение по столбцу, поэтому достаточно написать одну букву и нажать ввод. Программист бы сказал, что это перечисление.

    Мне возразят: цвет виден отовсюду, а колонка может уплыть. Если она так важна, перенесите ее в начало и закрепите.

    • Кроме состояния, у заказа может быть много других отметок, которые нужно фиксировать. Например, факт звонка или отзыва клиента. Заводим логическое поле “звонили?” или “отзыв?”, в которые ставим TRUE. При необходимости добавим хоть сто таких полей.

    • Используйте фильтры! Выделяем шапку и нажимаем воронку. Выставляем отбор по любому полю, например те клиенты, кто получил заказ, но которым еще не позвонили. Фильтры можно сохранять с понятными именами. В Гугло-доке фильтры бывают глобальные и персональные, когда другие пользователи не замечают их в процессе работы.

    Вспомним, от чего мы пришли:

    Ужас, ужас.

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

    В тему – заметка о подчёркивании в книгах.

  • Make makefiles

    У меня две простые просьбы:

    1. пишите make-файлы;
    2. не приставайте к тем, кто их пишет.

    Тогда все будет хорошо.

    Теперь длинно. Когда мы садимся за проект, то запускаем в терминале команды. Сбилдить uberjar, образ докера, переколбасить какие-то файлы. Например:

    Read more →

  • Большой-большой проект

    Часто слышу — Кложа не подходит для больших проектов. Даже цитируют Алекса Миллера из твиттера: “мы считаем Кложу прекрасным решением для небольших команд в быстро меняющихся условиях рынка”. Цитату пишу по памяти, видел когда-то давно.

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

    Read more →

  • Поудалял

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

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

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

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

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

    Инстаграм. Закинул туда штук десять фоток, но Инстаграм уже давно не про фотки, а своего рода Твиттер — треды, сторизы, локальные разборки… Не употребляю.

    Кстати, удалить соцсети оказалось проще, чем я думал. Хотя сервисы прячут нужный пункт в дебрях настроек, с самим процессом проблем не возникает. Болтают, что десять лет назад в Одноклассники надо было отправить бумажное письмо(!) в Ригу(!!) с заверенной копией паспорта(!!!). Не знаю, правда ли, но сейчас такого беспредела нет. Кроме того, почти все соцсети позволяют уведомить друзей сообщением, где разумно указать почту или телефон.

    Твиттер. Не я закрыл Твиттер, а он меня. Долгое время я парсил Твиттер с сотни подставных аккаунтов, и по запаре указал ключи с основной учетки. Забанили по самые помидоры: новый пользователь с моим именем удаляется через минуту. Не разбираясь, чуваки снесли учетку некоего Игоря Гришаева (хотел одно время выкупить у него ник igrishaev). Ни на какие письма и запросы Твиттер не ответил. Штош, прощайте.

    Дропбокс. Про этот сервис я писал не раз (пост, еще пост). Вкратце — Дропбокс в свое время был революцией, но скатился в унылую массу ненужных фич. Ребята выпустили облачные документы, потом какие-то заметки, команды, менеджер паролей… Венцом стал дичайший ребрендинг, “нативное” приложение на 300 мегабайт и сто экранов установки. Забрал пару файлов, снес и закрыл учетку. Помню старый Дропбокс, скорблю.

    Queryfeed. Удалил свой главный пет-проект. Занимался им аж с 2011 года – десять лет! Вкратце, сервис воровал данные из популярных соцсетей — в основном Твиттера и Инстаграмма. В работе над ним я испробовал сотни приемов и трюков, применял всякие выкрутасы. Покупал серые прокси, ходил в сеть через Тор, парсил HTML — всего и не вспомнишь. Отдельный факт – проект пережил не одну соцсеть! В свое время подключал Google Buzz и Google Plus. Оба появились и закрылись, а мой работал.

    Сервис был платный с подпиской в Paypal. Клиентов было не очень много, но на хостинг хватало. В лучшие месяцы приходило долларов 250. Чтобы справится с нагрузкой, которая исходила от ботов и скриптов, сделал архитектуру на множество нод, чтобы в любой момент добавить новую. Ничем серьезным этот бизнес не стал, и со временем отвлекал от основной работы. Все-таки пасинг сторонних ресурсов — это паразитирование на чужом бизнесе. В общем, закрыл сервис, не стал даже спасать бекапы и прочее, просто грохнул все ноды. Ушла эпоха!

    Paypal. Имел несколько Paypal-учеток для разных проектов. Оставил только один личный. Нареканий к сервису почти нет, просто работает. Раз в пару лет меняет интерфейс, и ладно.

    Домены. За эти годы накопил достаточно доменов для “своих проектов”. Ни один из них не стал чем-то серьезным, и пора уже оставить надежду на успешный стартап. Даже не выставил на аукцион — просто удалил, и теперь домены доступны всем.

    Что там еще? Левые учетки гугла. Хостинги, которыми уже не пользуюсь. Локальные файлы столетней давности. Как же классно все это удалять — неистово советую сделать то же самое. Старое освобождает путь для нового, и это просто замечательно.

  • Смысл

    Смысл жизни — пожалуй, самый инфантильный вопрос, которым может задаться человек. В жизни особи не больше смысла, чем в существовании камня. Тем более, что сама постановка вопроса убога. При чем тут смысл? Почему не цель или причина? С этими словами в вопросе становится больше смысла (забавная игра слов).

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

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

  • Что там с книгой? Полгода спустя

    Есть несколько новостей насчет книжки.

    • Издательство сообщает, что скоро ее можно будет купить на Алиэкспрессе. Отношусь к этому скептически, но все же новая площадка — почему нет? Вдруг у вас там бонусные баллы, купоны и прочие ништяки, которые давно пора потратить? Вот и повод. Или вы застряли в Китае, а книги под рукой нет, и вот пожалуйста. Как будет ссылка, сразу вам сообщу.

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

    • Сделал публичным репозиторий книги! Милости прошу: igrishaev/clj-book. Проект целиком на LaTeX, Docker и немного Кложи. Уточню, что я не спец в LaTeX, поэтому приму любую критику и советы. Инструкции по сборке допишу в readme чуть позже.
    • Книга в процессе перевода на английский. Вместе с Евгением Бартовым мы работаем уже над седьмой главой. Впереди долгая шлифовка и адаптация правок из второго издания, но когда-нибудь английская книга выйдет. Меня уже завернули в The Pragmatic Programmer из-за проблем с правами, так что буду искать другой вариант.

    Пока что все. Как видно, почти каждый пункт тянет на отдельный пост, буду освещать по ходу дела.

  • Фон на созвоне

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

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

    Фон должен быть не просто фоном, он должен вызывать какие-то эмоции, воспоминания. Говоря русским языком — МЭСАДЖ. За пять минут накидал фонов, которые могут найти отклик в собеседниках. Замечу, что фоны сохраняются, и дальше их можно переключать мышкой.

    Божественный ковер:

    Read more →

Страница 4 из 54