Публичный Сиджекотек. Делимся ссылками по техническим, инженерным и дизайнерским темам. Никакой политики, религии, спорта, анекдотов, котиков, порнухи и прочей фигни. Только по делу. ⋅ Телеграм для связи: @maximal
Короче история, даже несколько. С общей моралью.
В первых, кажется, Пиратах Карибского моря есть момент, когда Джека берут в плен и требуют какую-то инфу выдать. Но он, понятно, хитрый жук, понимает, что как только скажет, его тут же за борт и сбросят, и придумывает схему: они ищут другой корабль, его туда пересаживают, отпускают на безопасное удаление, и он оттуда уже кричит то что должен был им сказать. На что Барбосса такой: что? Что за херня? Ничего не понял. Слишком сложно. И давай дальше Джека пытать.
Вторая история про то, как я АПИ документировал. Был у нас сервис комментариев, и к нему был язык запросов. Ну и я насочинял что-то про модели данных, типы, представление объектов, все красиво, ортогонально, типизировано. Показал менеджеру, а он такой: что за херня? Слишком непривычно. Давай нормальное АПИ, запрос-ответ, параметры. Я побрыкался, но смирился, сделал, как он просил, с моей точки зрения сильно все упростив и оболванив, лишив кучи интересных подробностей, сделав «как у всех», показал, а он такой: «ну вот, теперь это лучшее АПИ, которое я видел в своей жизни». Лучшее значит привычное.
Третья уже про Roam Research. Делали мы тут недавно магазин экстеншнов, сначала придумали как у всех: github-репозиторий, пулл-реквесты. Потом подумали: а у нас же сам Roam это текстовый документ, зачем еще Github вовлекать, если можно код прям в нем писать? Пусть и экстеншны так же отправляют. Тем более что прецедент уже был — у нас были специальные страницы, на которых можно писать CSS или JS и расширять Roam под себя наживую.
Звучало круто, мы таким образом продвигали собственную платформу, убирали зависимость от стороннего сервиса. Пару недель попилили в этом направлении, а потом собрались и решили: не, херня какая-то. То есть оно зарабатает, но ощущается неправильно. Противоестественно. Код должен жить в Гитхабе. Да, кликов будет больше. Да, зависимость на чужую платформу. Да, в Гитхабе есть куча лишнего, что для нашей цели не нужно.
Но Гитхаб людям понятен. Им не надо объяснять, что это и как. У них в голове уже есть модель его работы, можно сразу разговаривать в его терминах. Поэтому код в Гитхабе и активности вокруг него ощущаются так естественно. Так что даже если с формальной точки зрения заводить репозиторий под экстеншн это лишний шаг (по числу кликов или операций, например), с точки зрения людей, пришедших со стороны, для них это все равно проще, чем изучать новый способ писать и хранить код, пусть даже и чуть более эффективный для данного конкретного случая. Навыки работы с Гитхабом поддерживаются автоматически, а навыки хранения кода в Roam в виде блока забудутся при первой же возможности.
Ну а мораль очень простая: не всегда оптимальное по чисто механическим метрикам решение (количество кликов, операций, скорость) будет оптимальным в глобальном смысле. Потому что есть еще привычность.
Ну и не все на свете стоит переизобретать заново. Да, я могу сделать, например, Гитхаб на 10% лучше. Но эти 10% не стоят того, что миллион людей в мире уже знают и пользуются Гитхабом и никуда с него не слезут. Нет, я не против инноваций. Более того, я считаю, в каждом продукте должно быть что-то новое, что-то, что оправдывает его существование. Просто не надо кидаться инновировать во всем. Иногда лучшее решение — сделать как у всех.