Михаил Греков написал, как сделать удобнее таблицы, с помощью которых пользователи управляют данными (CRM, ERP и прочие системы).

Михаил Греков написал, как сделать удобнее таблицы, с помощью которых пользователи управляют данными (CRM, ERP и прочие системы).

Михаил Греков написал, как сделать удобнее таблицы, с помощью которых пользователи управляют данными (CRM, ERP и прочие системы).

В первой статье разбирается просмотр данных.

1. Рабочая таблица должна занимать максимум места на экране. Как вариант — опция «на весь экран».
2. Объединяйте данные. Если есть данные о фамилии, имени и отчестве, их целесообразно вывести в один столбец ФИО. Должность или роль в системе тоже можно присоединить к ФИО.
3. Бесконечная прокрутка и кнопка «Показать ещё» не подходят для отображения строк таблицы. Делайте постраничную навигацию. Это удобно и для коллективной работы с таблицей.
4. Показывайте по умолчанию больше строк на одной странице: 50, 100, 500.
5. Используйте цветовые индикаторы. Красить строку целиком стоит только при отклонении от нормы.
6. При наличии цветовых индикаторов полезно отображать легенду цветов.
7. Храните пользовательские настройки вида, не сбрасывайте их после окончания сеанса.
8. Связанные сущности (название организации может быть связано с карточкой организации) полезно делать ссылками на соответствующие карточки. Но если таких сущностей в строке много, выделите только полезные в работе.
9. Строка должна подсвечиваться при наведении курсора. Должна быть возможность выделить строку кликом на неё.
10. Нет ничего страшного при появлении горизонтальной прокрутки.
11. В некоторых случаях полезно маркировать просмотренные записи.
12. Должна быть настройка отображения столбцов с системными свойствами (ID, дата создания, автор, дата изменения).
13. Переход к просмотру записи удобно сделать по двойному клику.
14. Иногда удобен режим предпросмотра, когда по клику открывается не вся запись, а сводка по ней, как в Google Drive.

«Строка в таблице часто является прелюдией к просмотру полной информации по записи. На моей практике в 99% рабочих таблиц модальный режим просмотра уступал просмотру записи на отдельной странице».

Люди не идеальны и это нормально ...

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

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

У меня свой багаж тараканов, поэтому я постепенно выработал очень простой подход к их искоренению. Собрал список из вредных привычек и неверных реакций, про которые знаю сам. Затем попросил коллег дополнить (было страшно и интересно). Получившийся список уже три года (!) просматриваю по календарю каждый понедельник. Если осознал проблему — удаляю. Заметил новую придурь — добавляю в список.

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

Как создать маркетплейс с нуля

Последнее время все вокруг делают маркетплейсы. Заметили? Я тут продолжаю досматривать записи с Product Sense, на которые не успел сходить в Минске вживую. Очень зашло выступление от CPO Beru.ru Алексея Журбы с опытом запуска с нуля на таком большом и конкурентном рынке как Россия. Кстати, он ведет неплохой канал @simplestupid.

Beru.ru, оказывается, уже год. За спиной у продукта Яндекс и Сбербанк, поэтому инвестиций много. Но, даже с такой поддержкой, по словам Алексея было много проблем и сложностей. Главный рецепт по решению проблемы курицы и яйца (Продавцы не идут туда, где нет покупателей. Покупатели не идут туда, где нет товаров) по опыту команды Beru заключается в субсидировании и тех, и других. Покупателей — скидками и бесплатной доставкой, продавцов — низкими комиссиями и хорошей логистикой. Это раскручивает колесо или "снежный ком", как этот эффект называют в мире сайтов объявлений. Команда Алексея раскрутила его до х10 в количестве заказов, 9 млн MAU и 2 700 продавцов. Оборот составляет уже более 1 млрд рублей в месяц. Неплохие результаты за год работы!

Конечно, всё это убыточно. Команда строит свои склады, инвестирует в доставку, дотирует нужные им категории товаров, тратит хороший бюджет на маркетинг и т.д. Мне понравился ответ Алексея на вопрос из зала "сколько вы сможете прожить в таком ритме инвестиций?". Он просто показал первый слайд презентации с логотипами учредителей :)

Но самое интересное открытие для меня случилось ближе к концу выступления. Сейчас в UK и США онлайн ретейл занимает в среднем 10%. В России это 4%. Про Казахстан даже говорить не стоит. Так что инвестиции в это направление не пустая трата денег и Х-кратный рост оборотов неизбежен и предсказуем. Вопрос в том, кто дожвет до этого роста и будет №1 на новом рынке?

▶️ https://www.youtube.com/watch?v=e-hUs-lXRFs

Периодически обновлять фреймворк

У нас в ГдеМатериале есть хорошая практика — мы периодически проверяем актуальность зависимостей. Я говорю не о мелких обновлениях и не о фиксах безопасности (они давно автоматизированы), а об обновлении мажорных версий библиотек, скажем Django с 1.11 до 2.0.

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

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

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

В общем тренируйте дисциплину — чтобы не застревать в каменном веке на протухших экскрементах мамонта вместо фреймворка, раз в два месяца обязательно обновляйтесь до самых актуальных версий. То, что вы при этом что-нибудь сломаете — просто примите как данность.

Сила комментария

Сила комментария

Комментарий в интерфейсе — это необязательное текстовое поле. В комментарии человек указывает любую дополнительную информацию, которая кажется ему важной:

— На карточке клиента: за что предоставили скидку 20%
— На форме заказа: что в дверь звонить не надо
— В тикете техподдержки: ссылка на обсуждение в багтрекинге

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

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

Например, на «Дадате» мы используем систему защиты от сетевых атак. У нее есть интерфейс, где можно заблокировать конкретный IP-адрес. Указываешь IP, жмешь «добавить в черный список», злодей получает бан. Что может быть проще?

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

Но постойте, можно же сделать нормальные поля «сотрудник» и «причина блокировки»? Да, можно, но непонятно:

— точно ли нужны именно эти поля?
— действительно ли они нужны?

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

Комментарий — элемент хаоса. Но с ним система устойчивее.

Конвергентное и дивергентное мышление

Конвергентное и дивергентное мышление

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

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

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

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