Реактивность vs Проактивность 4. Алкоголь и смартфоны.
Я много лет (больше 15-и) вообще не пью алкоголь. Среди коллег и знакомых распространены шутки и подколы на эту вроде "давай я тебе куплю пива а ты выпьешь". Так вот, я не пью, потому что если начну пить, то не смогу остановиться. Не думаю что это будет полезно мне или окружающим, поэтому даже не начинаю. Очень редко позволяю себе купить бутылку "Арсениевского" кваса, там 0.5-1% спирта, мне этого хватает чтобы почувствовать легкое опьянение. К алкашке я равнодушен, хотя раньше очень любил навернуть пива. Сейчас я могу спокойно сидеть среди бухающей компании лишь иногда немного сожалея что не могу выпить крафтового, потому что оно обладает интересным вкусом. (Безалкогольное не предлагать, спасибо).
Обратите внимание на людей, которые едут в метро и держат телефоны в руках. Я очень часто наблюдаю следующую картину: девушка открывает инстаграм, скроллит ленту вниз, ставит какие-то лайки, потом переключает экран на музыкальный проигрыватель, выбирает там какую-то песню "неизвестный исполнитель—untitled 1", возвращается обратно в инстаграм, свайпом вниз обновляет ленту, нового нет, она переключается на телеграм, проверяет какие-то чаты и каналы, потом, внимание, открывает таск менеджер (или как оно называется) и смахивает все приложения—типа удаляет из памяти. Потом опять включает аудиоплеер и выбирает там уже другую песню, хотя не дослушала предыдущую. Все это занимает около минуты.
Или один из ваших коллег в кабаке, который залипает в телефон. Алгоритм действий тот же самый: открыть фейсбук, пролистать вниз, открыть инстаграм, тоже потупить немного, потом вызвать таск менеджер и всё позакрывать. Через пару минут повторить.
Или рандомные парочки в кафе и в парке которые скроллят ленты на телефонах. Прямо как в одной из серий Черного Зеркала, где супруги вместо занятия реальным сексом смотрели записи из прошлого.
Когда не было смартфонов то их заменяли каналы в телевизоре. Я думаю вы можете вспомнить как ваши родители переключали каналы по кругу, не задерживаясь на каждом больше 10 секунд.
Люди не могут просто спокойно просидеть больше нескольких минут если у них есть средство развлечения.
Я не осуждаю этих людей. Возможно они отличные специалисты, друзья, и так далее. Но когда я наблюдаю похожие паттерны поведения у себя, то меня это беспокоит. Я даже не задумываюсь над тем, как пальцы автоматически набирают адреса всевозможных лент с контентом, руки сами скроллят, а когда надоедает то переключаются на другой источник. И так по кругу. Неделю назад у меня конкретно бомбануло когда я уже в четвертый раз за 10 минут то ли почту обновил то ли твиттер, уже не помню что, а при этом проекты, работа, дела по дому стоят.
Что интересно, спустя пару дней я увидел (в телеграм чате хаха) ссылку на статью на vc которая была переводом статьи с линкедина где человек писал про Dopamine Fasting. Типа жрите меньше сладкого, смотрите меньше соцсетей и будьте счастливы. Потом еще один блогер написал статью "не читайте ленты соцмедиа пока код компилируется?". Так что я со своими материалами совершенно неспециально попал в некий тренд, который сейчас несется по интернету.
Я много лет (больше 15-и) вообще не пью алкоголь. Среди коллег и знакомых распространены шутки и подколы на эту вроде "давай я тебе куплю пива а ты выпьешь". Так вот, я не пью, потому что если начну пить, то не смогу остановиться. Не думаю что это будет полезно мне или окружающим, поэтому даже не начинаю. Очень редко позволяю себе купить бутылку "Арсениевского" кваса, там 0.5-1% спирта, мне этого хватает чтобы почувствовать легкое опьянение. К алкашке я равнодушен, хотя раньше очень любил навернуть пива. Сейчас я могу спокойно сидеть среди бухающей компании лишь иногда немного сожалея что не могу выпить крафтового, потому что оно обладает интересным вкусом. (Безалкогольное не предлагать, спасибо).
Обратите внимание на людей, которые едут в метро и держат телефоны в руках. Я очень часто наблюдаю следующую картину: девушка открывает инстаграм, скроллит ленту вниз, ставит какие-то лайки, потом переключает экран на музыкальный проигрыватель, выбирает там какую-то песню "неизвестный исполнитель—untitled 1", возвращается обратно в инстаграм, свайпом вниз обновляет ленту, нового нет, она переключается на телеграм, проверяет какие-то чаты и каналы, потом, внимание, открывает таск менеджер (или как оно называется) и смахивает все приложения—типа удаляет из памяти. Потом опять включает аудиоплеер и выбирает там уже другую песню, хотя не дослушала предыдущую. Все это занимает около минуты.
Или один из ваших коллег в кабаке, который залипает в телефон. Алгоритм действий тот же самый: открыть фейсбук, пролистать вниз, открыть инстаграм, тоже потупить немного, потом вызвать таск менеджер и всё позакрывать. Через пару минут повторить.
Или рандомные парочки в кафе и в парке которые скроллят ленты на телефонах. Прямо как в одной из серий Черного Зеркала, где супруги вместо занятия реальным сексом смотрели записи из прошлого.
Когда не было смартфонов то их заменяли каналы в телевизоре. Я думаю вы можете вспомнить как ваши родители переключали каналы по кругу, не задерживаясь на каждом больше 10 секунд.
Люди не могут просто спокойно просидеть больше нескольких минут если у них есть средство развлечения.
Я не осуждаю этих людей. Возможно они отличные специалисты, друзья, и так далее. Но когда я наблюдаю похожие паттерны поведения у себя, то меня это беспокоит. Я даже не задумываюсь над тем, как пальцы автоматически набирают адреса всевозможных лент с контентом, руки сами скроллят, а когда надоедает то переключаются на другой источник. И так по кругу. Неделю назад у меня конкретно бомбануло когда я уже в четвертый раз за 10 минут то ли почту обновил то ли твиттер, уже не помню что, а при этом проекты, работа, дела по дому стоят.
Что интересно, спустя пару дней я увидел (в телеграм чате хаха) ссылку на статью на vc которая была переводом статьи с линкедина где человек писал про Dopamine Fasting. Типа жрите меньше сладкого, смотрите меньше соцсетей и будьте счастливы. Потом еще один блогер написал статью "не читайте ленты соцмедиа пока код компилируется?". Так что я со своими материалами совершенно неспециально попал в некий тренд, который сейчас несется по интернету.
Ускоренное воспроизведение
У меня довольно плохо с восприятием информации на слух. Вместо просмотра какого-то видео-курса или доклада, вместо прослушивания подкаста я лучше то же самое найду в текстовом виде и прочитаю—так во много раз быстрее и значительно удобоваримее.
Но не все доклады расшифровываются и не каждый подкаст имеет текстовую версию. Поэтому внезапно я открыл для себя ускоренный режим воспроизведения на ютубе (и других площадках). Если раньше смотреть какой-то часовой доклад казалось невероятным расточительством времени (ага, лучше ленту твиттера поскроллить), то сейчас уделить полчаса потенциально интересной теме вполне можно. Подавляющее большинство докладчиков говорят достаточно медленно для того чтобы быть нормально ускоренными двукратно. Хотя для некоторых мне хотелось бы 2.5 а то и 3x (читатели подсказывают, что есть плагины, позволяющие поставить скорость выше 2х). Английский на 2х идет тяжеловато конечно, надо сбавлять обороты, но русский/украинский—спокойно, привыкаешь за пару роликов.
Про саму возможность ускорения я знал много лет, одна из моих коллег таким образом смотрела сериалы и меня это очень забавляло. Однако догадался использовать эту супер-возможность для своих целей я не так давно, и теперь не отмахиваюсь от записей докладов с конференций, а с интересом их смотрю. Поэтому, если вдруг вы еще не пользуетесь ускоренным воспроизведением—настоятельно советую.
У меня довольно плохо с восприятием информации на слух. Вместо просмотра какого-то видео-курса или доклада, вместо прослушивания подкаста я лучше то же самое найду в текстовом виде и прочитаю—так во много раз быстрее и значительно удобоваримее.
Но не все доклады расшифровываются и не каждый подкаст имеет текстовую версию. Поэтому внезапно я открыл для себя ускоренный режим воспроизведения на ютубе (и других площадках). Если раньше смотреть какой-то часовой доклад казалось невероятным расточительством времени (ага, лучше ленту твиттера поскроллить), то сейчас уделить полчаса потенциально интересной теме вполне можно. Подавляющее большинство докладчиков говорят достаточно медленно для того чтобы быть нормально ускоренными двукратно. Хотя для некоторых мне хотелось бы 2.5 а то и 3x (читатели подсказывают, что есть плагины, позволяющие поставить скорость выше 2х). Английский на 2х идет тяжеловато конечно, надо сбавлять обороты, но русский/украинский—спокойно, привыкаешь за пару роликов.
Про саму возможность ускорения я знал много лет, одна из моих коллег таким образом смотрела сериалы и меня это очень забавляло. Однако догадался использовать эту супер-возможность для своих целей я не так давно, и теперь не отмахиваюсь от записей докладов с конференций, а с интересом их смотрю. Поэтому, если вдруг вы еще не пользуетесь ускоренным воспроизведением—настоятельно советую.
Вредные привычки год спустя.
Больше года назад я написал серию постов о вредных привычках. Хочу сообщить, как идут дела с тех пор, потому что на словах ты серийный предприниматель спишь по 4 часа в сутки по методу Да Винчи и запускаешь по стартапу в день, а на деле не можешь заставить себя даже дома убраться. У меня есть подозрение, что восторженные авторы текстов о продуктивности пишут их в первые дни и недели использования своих методик, во время "медового месяца". Потом проходит год-два и они опять скатываются. Я таким быть не хочу, поэтому вот короткая ретроспектива.
Итак, что изменилось за это время, что удалось сохранить, а что вернулось назад?
№1 (t.me/full_of_hatred/67): Ютуб и твитч я всё так же практически не смотрю на смартфоне, зато в твитч много залипал на десктопе. С книгами хуже. Я осилил прочитать с полтора десятка художественных книжек, пару технических, и начал читать Sapiens. Sapiens так и висит наполовину прочитанный. Привычку читать книги стабильно так и не удалось сформировать и сохранить, увы. Сейчас наверное буду пробовать её восстанавливать.
№2 (t.me/full_of_hatred/68): Ч/б экран использую до сих пор. Желания включить цветной нет совершенно. Feedly и несколько других приложений-пожирателей времени удалил, оставил только нужное: онлайн банки, такси и т.д. В игры на телефоне всё так же не играл и не играю. Недоволен своим прогрессом, потому что много времени тратил на чтение лент хакерньюз, то есть вместо юутуба, твитча и игр у меня были новости, новости, новости и общение в чатике. Заменил одну зависимость другой.
№3 (t.me/full_of_hatred/70): Привычки трекать перестал вообще. Что-то стабилизировалось: например не-ядение сладкого, ежедневные тренировки, и теперь мне не нужна "ачивка" чтобы выполнять полезное действие. Что-то не так и не зашло: вставать рано, читать по 100 страниц в день, вести дневник. Ценность трекера привычек пока под вопросом.
№4 (t.me/full_of_hatred/71): По помидорам не работаю. Вместо этого пишу задачу на бумажке и делаю сколько делается. Если задача интересная, то я легко могу залипнуть на 4 часа. Если неинтересная, то мозг юлит, прокрастинирует и всеми силами сопротивляется, тут метода не особо помогает. Помидоры я использую только для игры на гитаре, т.к. делаю разные упражнения и мне нужно заниматься час в день. С работой в последние несколько месяцев стало сильно получше, продуктивнее, удалось выбраться из состояния перманентной депрессивной прокрастинации, описанной в предновогоднем посте (t.me/full_of_hatred/286).
Все улучшения связываю не столько со сдвигами в мозгах, сколько с завершением активной фазы ремонта и наведением какого-никакого минимального порядка и комфорта в квартире.
Больше года назад я написал серию постов о вредных привычках. Хочу сообщить, как идут дела с тех пор, потому что на словах ты серийный предприниматель спишь по 4 часа в сутки по методу Да Винчи и запускаешь по стартапу в день, а на деле не можешь заставить себя даже дома убраться. У меня есть подозрение, что восторженные авторы текстов о продуктивности пишут их в первые дни и недели использования своих методик, во время "медового месяца". Потом проходит год-два и они опять скатываются. Я таким быть не хочу, поэтому вот короткая ретроспектива.
Итак, что изменилось за это время, что удалось сохранить, а что вернулось назад?
№1 (t.me/full_of_hatred/67): Ютуб и твитч я всё так же практически не смотрю на смартфоне, зато в твитч много залипал на десктопе. С книгами хуже. Я осилил прочитать с полтора десятка художественных книжек, пару технических, и начал читать Sapiens. Sapiens так и висит наполовину прочитанный. Привычку читать книги стабильно так и не удалось сформировать и сохранить, увы. Сейчас наверное буду пробовать её восстанавливать.
№2 (t.me/full_of_hatred/68): Ч/б экран использую до сих пор. Желания включить цветной нет совершенно. Feedly и несколько других приложений-пожирателей времени удалил, оставил только нужное: онлайн банки, такси и т.д. В игры на телефоне всё так же не играл и не играю. Недоволен своим прогрессом, потому что много времени тратил на чтение лент хакерньюз, то есть вместо юутуба, твитча и игр у меня были новости, новости, новости и общение в чатике. Заменил одну зависимость другой.
№3 (t.me/full_of_hatred/70): Привычки трекать перестал вообще. Что-то стабилизировалось: например не-ядение сладкого, ежедневные тренировки, и теперь мне не нужна "ачивка" чтобы выполнять полезное действие. Что-то не так и не зашло: вставать рано, читать по 100 страниц в день, вести дневник. Ценность трекера привычек пока под вопросом.
№4 (t.me/full_of_hatred/71): По помидорам не работаю. Вместо этого пишу задачу на бумажке и делаю сколько делается. Если задача интересная, то я легко могу залипнуть на 4 часа. Если неинтересная, то мозг юлит, прокрастинирует и всеми силами сопротивляется, тут метода не особо помогает. Помидоры я использую только для игры на гитаре, т.к. делаю разные упражнения и мне нужно заниматься час в день. С работой в последние несколько месяцев стало сильно получше, продуктивнее, удалось выбраться из состояния перманентной депрессивной прокрастинации, описанной в предновогоднем посте (t.me/full_of_hatred/286).
Все улучшения связываю не столько со сдвигами в мозгах, сколько с завершением активной фазы ремонта и наведением какого-никакого минимального порядка и комфорта в квартире.
Бесконечный скроллинг и компромиссы с совестью
Воистину—бесконечная лента—изобретение самого диавола. Парень, который её придумал (некто Aza Raskin, еще ~15 лет назад), потом писал, что сожалеет об этом.
Здесь должна быть картинка где отец заглядывает к сыну в комнату. Сын сидит за компьютером, на экране твиттер. Отец спрашивает "что сынок, играешь ночи напролет, как раньше?". Сын отвечает "нет пап, игры это уже не интересно. Я тупо смотрю на экран в поток бессмысленных сообщений и кручу экран вниз". Картинку я видел в твиттере пару дней назад но забыл схоронить и теперь её конечно уже не найти. В том числе потому что лента у твиттера бесконечная. Если кто видел сбросьте ссылку, вставлю.
Простое изменение дизайна радикально меняет поведение и вовлеченность пользователя. Цифр и пруфов я вам конечно никаких не предоставлю, достаточно просто посмотреть на современные соцмедиа: фейсбук, твитор, реддит и imgur, 9gag, d3 и какой-нибудь пикабу.
Прикол с бесконечной лентой в том, что у тебя нет ощущения законченности. Прекратить скроллить можно только если попал на то, что уже читал (рискну предположить что большинству пользователей нужно потратить несколько часов, чтобы дойти до этой точки) или если упереться в конец. Но конца нет, лента подгружается умным джаваскриптом заранее, бесшовно, и мы скроллим, скроллим, скроллим… Легко начать смотреть а потом залипнуть на час среди котиков новостей мемасов и гифок. Нет возможности вернуться остановиться и вернуться к ленте потом, потому что позиция потеряется и останется ощущение недосказанности.
Интересно было бы посмотреть на метрики вовлечённости при отключенном бесконечном скролле. Но нам их никто не покажет, увы, ведь это уже де-факто стандарт.
В бэкраунде я пилю проект—сайт для пристройства котиков. Заходишь на сайт, выбираешь кота, смотришь фотки и биографию, жмешь позвонить, договариваешься о знакомстве—забираешь пушистый шарик домой. Изи. И в этом месте я понимаю, что конечно же нужно внедрять бесконечный скролл. Потому что котик сам себя не пристроит, а человек любит смотреть на котиков, поэтому нужно ему дать их побольше, авось кто приглянется и найдет себе семью? Пусть лучше на нашем сайте убивает время чем на фейсбуке. Фейсбук свое и так возьмет.
Вот так из благих намерений вырастают цифровые монстры, пожирающие время и силы людей в поистине колоссальных масштабах.
Воистину—бесконечная лента—изобретение самого диавола. Парень, который её придумал (некто Aza Raskin, еще ~15 лет назад), потом писал, что сожалеет об этом.
Здесь должна быть картинка где отец заглядывает к сыну в комнату. Сын сидит за компьютером, на экране твиттер. Отец спрашивает "что сынок, играешь ночи напролет, как раньше?". Сын отвечает "нет пап, игры это уже не интересно. Я тупо смотрю на экран в поток бессмысленных сообщений и кручу экран вниз". Картинку я видел в твиттере пару дней назад но забыл схоронить и теперь её конечно уже не найти. В том числе потому что лента у твиттера бесконечная. Если кто видел сбросьте ссылку, вставлю.
Простое изменение дизайна радикально меняет поведение и вовлеченность пользователя. Цифр и пруфов я вам конечно никаких не предоставлю, достаточно просто посмотреть на современные соцмедиа: фейсбук, твитор, реддит и imgur, 9gag, d3 и какой-нибудь пикабу.
Прикол с бесконечной лентой в том, что у тебя нет ощущения законченности. Прекратить скроллить можно только если попал на то, что уже читал (рискну предположить что большинству пользователей нужно потратить несколько часов, чтобы дойти до этой точки) или если упереться в конец. Но конца нет, лента подгружается умным джаваскриптом заранее, бесшовно, и мы скроллим, скроллим, скроллим… Легко начать смотреть а потом залипнуть на час среди котиков новостей мемасов и гифок. Нет возможности вернуться остановиться и вернуться к ленте потом, потому что позиция потеряется и останется ощущение недосказанности.
Интересно было бы посмотреть на метрики вовлечённости при отключенном бесконечном скролле. Но нам их никто не покажет, увы, ведь это уже де-факто стандарт.
В бэкраунде я пилю проект—сайт для пристройства котиков. Заходишь на сайт, выбираешь кота, смотришь фотки и биографию, жмешь позвонить, договариваешься о знакомстве—забираешь пушистый шарик домой. Изи. И в этом месте я понимаю, что конечно же нужно внедрять бесконечный скролл. Потому что котик сам себя не пристроит, а человек любит смотреть на котиков, поэтому нужно ему дать их побольше, авось кто приглянется и найдет себе семью? Пусть лучше на нашем сайте убивает время чем на фейсбуке. Фейсбук свое и так возьмет.
Вот так из благих намерений вырастают цифровые монстры, пожирающие время и силы людей в поистине колоссальных масштабах.
👍2
Важность интеграций 1
Несколько лет назад я обсуждал с клиентом новый проект. Суть такова: есть компании-производители, которые хотят промоутить свои товары через кешбек или какие-то бонусы за покупки. Делается сайт (не нами), сайт рекламируется, человек туда заходит, загружает фото чека, qr-кода или другой документ подтверждающий покупку, потом фото идет к нам, наша система его валидирует и сообщает результат назад. Вопрос заключался в том, каким образом обеспечить сайтоделам максимальную простоту интеграции нашей системы.
Я предложил, чтобы мы поставляли API (он у нас был), а партнёры пусть нам грузят фотки самостоятельно, используя API. Дока есть, мануал есть, бери и пользуйся. Все безопасно и надежно.
Клиент предложил подумать еще, как можно упростить процесс, например сделать виджет который партнёры могли бы встроить себе на сайт и чтобы работало само.
Я воспротивился, потому что не видел хорошего технического решения этой задачи, но клиент настоял на том, чтобы мы сделали виджет, который бы встраивался в сайт просто добавлением одной строки js/css. Как какой-нибудь intercom или всевозможные его аналоги. Но как бы сайт партнёра узнавал о том, что пользователь загрузил нам данные? Ведь виджет должен быть универсальным, работать везде, а вызовы мы можем делать только на наше API. Если все делать на клиенте, то можно подделывать данные, короче я призадумался. Решение этой проблемы мы нашли, в том числе как сделать это ± безопасно, я посадил фронтендеров за jQuery (потому что виджет должен работать везде) и спустя пару месяцев мы выкатили рабочий код.
Сейчас я понимаю, что это было важнейшее решение по тому продукту, а я поступил очень недальновидно и по-джуниорски, сопротивляясь предложениям клиента и заняв техноцентричную позицию. То, что мне казалось техническим костылём, на практике оказалось успешным, удобным и безопасным решением. Наш виджет добавлялся буквально двумя строками JS, это могли осилить любые разработчики, подробная дока объясняла как его инициализировать и кастомизировать, и в принципе до меня дело доходило редко. Большинство веб-студий справлялись со всем сами. В том году я его переписал (нужно было добавить новую функциональность), работает на куче сайтов до сих пор и еще будет работать.
Несколько лет назад я обсуждал с клиентом новый проект. Суть такова: есть компании-производители, которые хотят промоутить свои товары через кешбек или какие-то бонусы за покупки. Делается сайт (не нами), сайт рекламируется, человек туда заходит, загружает фото чека, qr-кода или другой документ подтверждающий покупку, потом фото идет к нам, наша система его валидирует и сообщает результат назад. Вопрос заключался в том, каким образом обеспечить сайтоделам максимальную простоту интеграции нашей системы.
Я предложил, чтобы мы поставляли API (он у нас был), а партнёры пусть нам грузят фотки самостоятельно, используя API. Дока есть, мануал есть, бери и пользуйся. Все безопасно и надежно.
Клиент предложил подумать еще, как можно упростить процесс, например сделать виджет который партнёры могли бы встроить себе на сайт и чтобы работало само.
Я воспротивился, потому что не видел хорошего технического решения этой задачи, но клиент настоял на том, чтобы мы сделали виджет, который бы встраивался в сайт просто добавлением одной строки js/css. Как какой-нибудь intercom или всевозможные его аналоги. Но как бы сайт партнёра узнавал о том, что пользователь загрузил нам данные? Ведь виджет должен быть универсальным, работать везде, а вызовы мы можем делать только на наше API. Если все делать на клиенте, то можно подделывать данные, короче я призадумался. Решение этой проблемы мы нашли, в том числе как сделать это ± безопасно, я посадил фронтендеров за jQuery (потому что виджет должен работать везде) и спустя пару месяцев мы выкатили рабочий код.
Сейчас я понимаю, что это было важнейшее решение по тому продукту, а я поступил очень недальновидно и по-джуниорски, сопротивляясь предложениям клиента и заняв техноцентричную позицию. То, что мне казалось техническим костылём, на практике оказалось успешным, удобным и безопасным решением. Наш виджет добавлялся буквально двумя строками JS, это могли осилить любые разработчики, подробная дока объясняла как его инициализировать и кастомизировать, и в принципе до меня дело доходило редко. Большинство веб-студий справлялись со всем сами. В том году я его переписал (нужно было добавить новую функциональность), работает на куче сайтов до сих пор и еще будет работать.
Важность интеграций 2
Простота и бесшовность интеграции невероятно важна. Никто не будет качать какие-то библиотеки, делать настройки или добавлять зависимости себе в проект. Все хотят чтобы пара строчек и все работало. И не ломалось.
Среди равных двух выигрывает тот продукт, у которого больше интеграций с уже существующими решениями. Жизнь слишком коротка, чтобы пилить кастомную интеграцию. Пользователь хочет нажать кнопку и получить ценность уже. Запрограммировать-то все могут, а нам пожалуйста предоставьте no-code.
Примерно в то же время в другом стартапе обсуждали похожую штуку—виджет, который бы встраивался на сайт и добавлял к нему некую функциональность типа легковесной CRM. Мы уже год как делали мегасложный продукт, и вдруг оказалось что этот смехотворный виджет, состоящий из двух полей и одной кнопочки, является едва ли не основой бизнеса.
Никому не нужно ваше кастомное поделие, куда надо интегрироваться и переносить данные, никому не интересна еще одна система. Сделайте пожалуйста, чтобы я мог добавить вашу кнопку себе на сайт или в приложение, и желательно чтобы мне не нужно было ничего настраивать.
Никому не нужен еще один формат конфигурации. Я раздумываю про свой PaaS и понимаю, что если я не сделаю бесшовную интеграцию с docker-compose, куберовскими манифестами, helm-чартами, то никто ко мне не пойдет. Никто не будет изучать еще один ямль в довесок к той тройке что он уже знает. Никто не будет мигрировать свою инфраструктуру, если это будет стоить больше чем 10 минут времени. Людям нужно дать возможность использовать существующие решения и языки, чтобы они могли попробовать и оценить ваш продукт за 5 секунд, просто залив туда свои существующие конфиги. Как бы мне не нравились костыли, компиляторы из одного в другое и адаптеры, это нужно делать.
Простота и бесшовность интеграции невероятно важна. Никто не будет качать какие-то библиотеки, делать настройки или добавлять зависимости себе в проект. Все хотят чтобы пара строчек и все работало. И не ломалось.
Среди равных двух выигрывает тот продукт, у которого больше интеграций с уже существующими решениями. Жизнь слишком коротка, чтобы пилить кастомную интеграцию. Пользователь хочет нажать кнопку и получить ценность уже. Запрограммировать-то все могут, а нам пожалуйста предоставьте no-code.
Примерно в то же время в другом стартапе обсуждали похожую штуку—виджет, который бы встраивался на сайт и добавлял к нему некую функциональность типа легковесной CRM. Мы уже год как делали мегасложный продукт, и вдруг оказалось что этот смехотворный виджет, состоящий из двух полей и одной кнопочки, является едва ли не основой бизнеса.
Никому не нужно ваше кастомное поделие, куда надо интегрироваться и переносить данные, никому не интересна еще одна система. Сделайте пожалуйста, чтобы я мог добавить вашу кнопку себе на сайт или в приложение, и желательно чтобы мне не нужно было ничего настраивать.
Никому не нужен еще один формат конфигурации. Я раздумываю про свой PaaS и понимаю, что если я не сделаю бесшовную интеграцию с docker-compose, куберовскими манифестами, helm-чартами, то никто ко мне не пойдет. Никто не будет изучать еще один ямль в довесок к той тройке что он уже знает. Никто не будет мигрировать свою инфраструктуру, если это будет стоить больше чем 10 минут времени. Людям нужно дать возможность использовать существующие решения и языки, чтобы они могли попробовать и оценить ваш продукт за 5 секунд, просто залив туда свои существующие конфиги. Как бы мне не нравились костыли, компиляторы из одного в другое и адаптеры, это нужно делать.
Важность интеграций 3
Другой пример это экосистема JVM. Почему она так хороша? Потому что за 20 лет написано библиотек и решений под любую задачу. Поэтому новым языкам на JVM не нужно ничего делать заново. Выучил синтаксис, базовые концепции и вперед—бери и пользуйся тем, что уже сделано. Scala, Kotlin, Clojure, другие языки получают большое преимущество—им не нужно переизобретать велосипед. JS туда же…
Напоследок расскажу про махровые времена. Когда я работал в энтерпрайзе, то существенной частью любого проекта была т.н. команда интеграции и миграции. Эти ребята брали существующие системы, установленные у заказчика (телеком оператора) и писали конвертеры чужих XML в наши, чужих таблиц в наши, да еще и в обе стороны. Естественно, со временем накопилась некая база типовых интеграций, потом был разработан визуальный конструктор позволяющий накликивать маппинги между XMLями и таблицами, потом джобы синхронизации и реконсиляции, короче полный набор. У заказчика уже стоит вагон систем, а тут приходим мы и говорим "щас мы тебе покажем все в нашей системе". Туда сюда подключаем эти самые интеграции—и—оп—все его продукты, клиенты, заявки и тд видны уже у нас. Я всегда надменно смотрел на этих ребят потому что то была обезьянья работа—сиди да и клепай маппинги которые тебе бизнес-аналитик сказал делать. Но на самом деле они занимались едва ли не важнейшей частью проектов. Потому что новая система без актуальных данных никому не нужна.
Интеграции имеют колоссальное значение. Особенно, когда на рынке миллион разных продуктов которыми люди уже пользуются и в которых люди уже накопили данные.
Это очень неблагодарная работа. Я ненавижу поддержку других форматов, конвертацию туда-сюда, особенно если данные напрямую не маппятся. Но это нужно делать, иначе—никак.
Другой пример это экосистема JVM. Почему она так хороша? Потому что за 20 лет написано библиотек и решений под любую задачу. Поэтому новым языкам на JVM не нужно ничего делать заново. Выучил синтаксис, базовые концепции и вперед—бери и пользуйся тем, что уже сделано. Scala, Kotlin, Clojure, другие языки получают большое преимущество—им не нужно переизобретать велосипед. JS туда же…
Напоследок расскажу про махровые времена. Когда я работал в энтерпрайзе, то существенной частью любого проекта была т.н. команда интеграции и миграции. Эти ребята брали существующие системы, установленные у заказчика (телеком оператора) и писали конвертеры чужих XML в наши, чужих таблиц в наши, да еще и в обе стороны. Естественно, со временем накопилась некая база типовых интеграций, потом был разработан визуальный конструктор позволяющий накликивать маппинги между XMLями и таблицами, потом джобы синхронизации и реконсиляции, короче полный набор. У заказчика уже стоит вагон систем, а тут приходим мы и говорим "щас мы тебе покажем все в нашей системе". Туда сюда подключаем эти самые интеграции—и—оп—все его продукты, клиенты, заявки и тд видны уже у нас. Я всегда надменно смотрел на этих ребят потому что то была обезьянья работа—сиди да и клепай маппинги которые тебе бизнес-аналитик сказал делать. Но на самом деле они занимались едва ли не важнейшей частью проектов. Потому что новая система без актуальных данных никому не нужна.
Интеграции имеют колоссальное значение. Особенно, когда на рынке миллион разных продуктов которыми люди уже пользуются и в которых люди уже накопили данные.
Это очень неблагодарная работа. Я ненавижу поддержку других форматов, конвертацию туда-сюда, особенно если данные напрямую не маппятся. Но это нужно делать, иначе—никак.
Про собственное жилье 1
Частый вопрос, которым задается молодой человек современности—нужно ли покупать своё собственное жилье? Может, жить в чужом? (с родителями, на съемной хате, ваши варианты). Я ранее писал про ремонт, читателю очевидно, что своё жильё у меня есть. Поделюсь своей мотивацией и соображениями на эту тему.
До 10 лет я жил с родителями в общежитии. Так себе конечно, но ко всему привыкаешь. В 97 родители купили огромную четырехкомантную двухуровневую квартиру и мы переехали в неё. У меня теперь была своя комната! Потом я поехал в Киев учиться в КПИ и понеслось: два месяца съемной на двоих комнаты на Минской, два месяца жизни в проходной комнате хрущёвки вместе с совершенно неадекватной бабулькой-коммунистом, потом 4 года коридорной общаги с военными (по стечению обстоятельств, меня не поселили в общежитие моего факультета). Потом около года в хрущевке на четверых людей на Дружбы Народов, потом два года уже самостоятельно в однокомнатной панельке на Харьковской, потом 2 года на четверых в сталинке на Дружбы Народов, потом я наконец-то купил свою хату (на Лукьяновке), жил там 5 лет, потом её отобрали, я купил квартиру опять и вот пишу отседова.
Жизнь помотала по съемному и чужому жилью, и должен признаться, зачастую это был не очень приятный опыт. В нашем государстве арендатор абсолютно не защищен. Договора—это филькины грамоты и по желанию хозяина вас мигом выкинут на мороз. А там уже судись-не судись, а надо искать новое место. Илья Климов (jsninja) говорил, что он специально составлял договор аренды на юрлицо со всеми договорами и налогами, но это редкий случай. Мало кто будет заморачиваться таким, а хозяева скорее всего пожмут плечами и просто сдадут хату человеку, который будет снимать как все нормальные люди—на честном слове. Хотя, если уж снимаете, то советую делать всё по букве закона. Поэтому, хороший арендодатель ценится больше собственно квартиры. Частые истории про визиты хозяев (для того чтобы забрать деньги или просто так, в ваше отсутствие), сложности решения вопросов с ремонтами, жадность (главнейший порок!), неадекватное поведение и так далее. Иногда мне везло снять жильё, хозяева которого были заграницей, но бывало и всё, что я перечислил выше.
В 2008 платили мы за двухкомнатный хрущ 700$ на четверых. Когда доллар упал до 4.5 то хозяйка потребовала чтобы мы платили 3500 грн. Что делать, согласились. Потом доллар вырос и она уже захотела 800$. Когда ей было предъявлено что денег таких нет, так как зарплаты нам не подняли то она потребовала 4000. Мы пожили еще месяц и съехали. Как водится, она не отдала часть залога потому что "стерли лак" на её несчастных советских стульях—одежду вешали.
Ваши комментарии о (не)удачном съеме оставляйте под блогозаписью: https://www.rozhkov.me/post/home-sweet-home/
Частый вопрос, которым задается молодой человек современности—нужно ли покупать своё собственное жилье? Может, жить в чужом? (с родителями, на съемной хате, ваши варианты). Я ранее писал про ремонт, читателю очевидно, что своё жильё у меня есть. Поделюсь своей мотивацией и соображениями на эту тему.
До 10 лет я жил с родителями в общежитии. Так себе конечно, но ко всему привыкаешь. В 97 родители купили огромную четырехкомантную двухуровневую квартиру и мы переехали в неё. У меня теперь была своя комната! Потом я поехал в Киев учиться в КПИ и понеслось: два месяца съемной на двоих комнаты на Минской, два месяца жизни в проходной комнате хрущёвки вместе с совершенно неадекватной бабулькой-коммунистом, потом 4 года коридорной общаги с военными (по стечению обстоятельств, меня не поселили в общежитие моего факультета). Потом около года в хрущевке на четверых людей на Дружбы Народов, потом два года уже самостоятельно в однокомнатной панельке на Харьковской, потом 2 года на четверых в сталинке на Дружбы Народов, потом я наконец-то купил свою хату (на Лукьяновке), жил там 5 лет, потом её отобрали, я купил квартиру опять и вот пишу отседова.
Жизнь помотала по съемному и чужому жилью, и должен признаться, зачастую это был не очень приятный опыт. В нашем государстве арендатор абсолютно не защищен. Договора—это филькины грамоты и по желанию хозяина вас мигом выкинут на мороз. А там уже судись-не судись, а надо искать новое место. Илья Климов (jsninja) говорил, что он специально составлял договор аренды на юрлицо со всеми договорами и налогами, но это редкий случай. Мало кто будет заморачиваться таким, а хозяева скорее всего пожмут плечами и просто сдадут хату человеку, который будет снимать как все нормальные люди—на честном слове. Хотя, если уж снимаете, то советую делать всё по букве закона. Поэтому, хороший арендодатель ценится больше собственно квартиры. Частые истории про визиты хозяев (для того чтобы забрать деньги или просто так, в ваше отсутствие), сложности решения вопросов с ремонтами, жадность (главнейший порок!), неадекватное поведение и так далее. Иногда мне везло снять жильё, хозяева которого были заграницей, но бывало и всё, что я перечислил выше.
В 2008 платили мы за двухкомнатный хрущ 700$ на четверых. Когда доллар упал до 4.5 то хозяйка потребовала чтобы мы платили 3500 грн. Что делать, согласились. Потом доллар вырос и она уже захотела 800$. Когда ей было предъявлено что денег таких нет, так как зарплаты нам не подняли то она потребовала 4000. Мы пожили еще месяц и съехали. Как водится, она не отдала часть залога потому что "стерли лак" на её несчастных советских стульях—одежду вешали.
Ваши комментарии о (не)удачном съеме оставляйте под блогозаписью: https://www.rozhkov.me/post/home-sweet-home/
Про собственное жилье 2
Лендлорды зачастую—глупые, жадные, неадекватные люди, для которых сдача недвижимости является наибольшим источником дохода. Риэлторы туда же—этой профессии я желаю скорейшего вымирания. Нет, конечно есть и нормальные люди, вот только много ли их? Мне как-то не сильно везло.
Для меня жизнь в чужой квартире—это лишний повод для стресса и тревожности. Что будет если вдруг подымется доллар? Повзрослеет дочка хозяина? Я захочу сделать ремонт? Я возьму кота или собаку? Эти, и великое множество других вопросов давят на меня и мешают нормально жить. Так получилось, что на одной из хат мы взяли котов и не сказали об этом хозяйке. Когда она приходила, то мы паковали животных в боксы и прятали в подъезде :) Во времена были. Впрочем, это не ко всем применимо.
Как показала моя практика, даже покупка квартиры не страхует вас от того, что вы её не потеряете, но это нечастые случаи и даже моей ситуации можно было бы избежать, следуя нескольким нехитрым правилам: не покупать жилье, предыдущая сделка по которому была проведена меньше пяти лет назад, говорить с соседями, не ввязываться в квартиры по которым было наследство, иметь своего нотариуса и юриста. Я уже второй год как собираюсь написать про это материал и никак не приступлю. Ждите.
Собственное жильё для меня—это микроскопический островок иллюзорной стабильности в нашем мире, за который мне приятно держаться и ощущать его опору. Я уже оброс котами, собаками, вещами, мне нравится мой собственный ремонт, моя мебель, я хочу разгрузить свою голову от излишней тревожности (пусть даже она не всегда обоснована) и не ощущать над собой никакой власти со стороны людей, которым я плачу деньги за пользование их жалкой хибарой.
Что касается других стран—то там не всё так однозначно. Впрочем тут я могу лишь оперировать обрывочными сведениями почерпнутыми из разговоров и историй. На западе жилье часто сдается на длительный срок, арендатор защищен и его просто так не выбросишь, принято сдавать квартиры и дома без мебели и с минимальным ремонтом. Такие расклады совершенно меняют дело и возможно если вы экспат без животных и детей то вам такой вариант будет в самый раз. Не спорю. Но я пока что сижу в Украине и не собираюсь рыпаться, поэтому моя мотивация простая—снизить риски и стресс от влияния посторонних людей на среду моего существования. Я ценю свой комфорт и своё спокойствие.
P.S.: Когда я ходил на своей шлюпке, то мы снимали уже коммерческую недвижимость. Там дела не особо отличаются от жилого фонда, а то и хуже.
Ваши комментарии о (не)удачном съеме оставляйте под блогозаписью: https://www.rozhkov.me/post/home-sweet-home/
Лендлорды зачастую—глупые, жадные, неадекватные люди, для которых сдача недвижимости является наибольшим источником дохода. Риэлторы туда же—этой профессии я желаю скорейшего вымирания. Нет, конечно есть и нормальные люди, вот только много ли их? Мне как-то не сильно везло.
Для меня жизнь в чужой квартире—это лишний повод для стресса и тревожности. Что будет если вдруг подымется доллар? Повзрослеет дочка хозяина? Я захочу сделать ремонт? Я возьму кота или собаку? Эти, и великое множество других вопросов давят на меня и мешают нормально жить. Так получилось, что на одной из хат мы взяли котов и не сказали об этом хозяйке. Когда она приходила, то мы паковали животных в боксы и прятали в подъезде :) Во времена были. Впрочем, это не ко всем применимо.
Как показала моя практика, даже покупка квартиры не страхует вас от того, что вы её не потеряете, но это нечастые случаи и даже моей ситуации можно было бы избежать, следуя нескольким нехитрым правилам: не покупать жилье, предыдущая сделка по которому была проведена меньше пяти лет назад, говорить с соседями, не ввязываться в квартиры по которым было наследство, иметь своего нотариуса и юриста. Я уже второй год как собираюсь написать про это материал и никак не приступлю. Ждите.
Собственное жильё для меня—это микроскопический островок иллюзорной стабильности в нашем мире, за который мне приятно держаться и ощущать его опору. Я уже оброс котами, собаками, вещами, мне нравится мой собственный ремонт, моя мебель, я хочу разгрузить свою голову от излишней тревожности (пусть даже она не всегда обоснована) и не ощущать над собой никакой власти со стороны людей, которым я плачу деньги за пользование их жалкой хибарой.
Что касается других стран—то там не всё так однозначно. Впрочем тут я могу лишь оперировать обрывочными сведениями почерпнутыми из разговоров и историй. На западе жилье часто сдается на длительный срок, арендатор защищен и его просто так не выбросишь, принято сдавать квартиры и дома без мебели и с минимальным ремонтом. Такие расклады совершенно меняют дело и возможно если вы экспат без животных и детей то вам такой вариант будет в самый раз. Не спорю. Но я пока что сижу в Украине и не собираюсь рыпаться, поэтому моя мотивация простая—снизить риски и стресс от влияния посторонних людей на среду моего существования. Я ценю свой комфорт и своё спокойствие.
P.S.: Когда я ходил на своей шлюпке, то мы снимали уже коммерческую недвижимость. Там дела не особо отличаются от жилого фонда, а то и хуже.
Ваши комментарии о (не)удачном съеме оставляйте под блогозаписью: https://www.rozhkov.me/post/home-sweet-home/
Как у меня отобрали честно купленную квартиру
Я уже много раз упоминал о том что потерял хату: на стримах, в постах, чате канала. Пришло время подробно рассказать что произошло, как развивались события, какие ошибки я совершил и какие выводы сделал. Текст оказался довольно длинным, я не буду бить его на части, как обычно, потому что их было бы 10, и к концу вы бы уже забыли как оно вообще начиналось. Полный пост вы можете почитать в блоге: https://www.rozhkov.me/post/how-i-lost-appartment/ А вот тизер:
…
Ошибка №1: Смотреть квартиру, по которой предыдущая сделка была совершена менее 5 лет назад. Нормальный нотариус или риэлтор сразу же сообщит вам, что это подозрительно. Квартира—не автомобиль, такие вещи не продаются просто так. Конечно, бывают исключения, но в целом есть правило: предыдущая сделка должна быть проведена давно, чтобы истекли сроки давности всевозможных исков и наследственных дел.
…
Ошибка №3: Спешка. Ни в коем случае никогда не надо спешить. Квартира это серьезные деньги и серьезное вложение. Если вас стесняют обстоятельства, ищите варианты, но сделайте так, чтобы выгадать себе значительный запас по времени на поиски, желательно, полгода, а лучше и весь год.
…
Ошибка №4: Не говорить с соседями. Всегда, всегда, абсолютно всегда говорите с соседями. Желательно по лестничной клетке, желательно с несколькими + по подъезду.
…
Май 2013. Счастливая молодая семья въехала в убитую в хлам однушку :)
…
Декабрь 2013. В дверь стучатся. Открываю—участковый. Говорит, что некий гражданин из Беларуси заявил что его сестру убили, квартиру мошенники оформили на себя и теперь в ней проживают неизвестные.
…
Февраль 2015. Мы находим очень хорошего адвоката. В это время выносится решение по первому делу—признанию договоров недействительными. Не в нашу пользу.
…
Сентябрь 2015. Все что можно было вытащить из дела по договорам вытащили, пришло время иска о истребовании. Дед наконец-то его подает и наш адвокат продолжает работать—там неправильно посчитали сумму, там не приложили все документы.
…
Декабрь 2018. К этому времени мы уже купили новую квартиру и просто ждали пока придет бумажка из ДВС о том что нас выселяют.
…
Мы потратили на квартиру 67k + на адвоката и судебные сборы около 10k. 5.5 лет жизни на съемной квартире такого плана нам стоили бы примерно по 400$ за месяц: 26k. То есть, даже при самых оптимистичных подсчетах мы потеряли 50k зелени.
…
Предлагаю читателям поступать мудро и учиться на ошибках других.
Ссылка на лонгрид: https://www.rozhkov.me/post/how-i-lost-appartment/
Я уже много раз упоминал о том что потерял хату: на стримах, в постах, чате канала. Пришло время подробно рассказать что произошло, как развивались события, какие ошибки я совершил и какие выводы сделал. Текст оказался довольно длинным, я не буду бить его на части, как обычно, потому что их было бы 10, и к концу вы бы уже забыли как оно вообще начиналось. Полный пост вы можете почитать в блоге: https://www.rozhkov.me/post/how-i-lost-appartment/ А вот тизер:
…
Ошибка №1: Смотреть квартиру, по которой предыдущая сделка была совершена менее 5 лет назад. Нормальный нотариус или риэлтор сразу же сообщит вам, что это подозрительно. Квартира—не автомобиль, такие вещи не продаются просто так. Конечно, бывают исключения, но в целом есть правило: предыдущая сделка должна быть проведена давно, чтобы истекли сроки давности всевозможных исков и наследственных дел.
…
Ошибка №3: Спешка. Ни в коем случае никогда не надо спешить. Квартира это серьезные деньги и серьезное вложение. Если вас стесняют обстоятельства, ищите варианты, но сделайте так, чтобы выгадать себе значительный запас по времени на поиски, желательно, полгода, а лучше и весь год.
…
Ошибка №4: Не говорить с соседями. Всегда, всегда, абсолютно всегда говорите с соседями. Желательно по лестничной клетке, желательно с несколькими + по подъезду.
…
Май 2013. Счастливая молодая семья въехала в убитую в хлам однушку :)
…
Декабрь 2013. В дверь стучатся. Открываю—участковый. Говорит, что некий гражданин из Беларуси заявил что его сестру убили, квартиру мошенники оформили на себя и теперь в ней проживают неизвестные.
…
Февраль 2015. Мы находим очень хорошего адвоката. В это время выносится решение по первому делу—признанию договоров недействительными. Не в нашу пользу.
…
Сентябрь 2015. Все что можно было вытащить из дела по договорам вытащили, пришло время иска о истребовании. Дед наконец-то его подает и наш адвокат продолжает работать—там неправильно посчитали сумму, там не приложили все документы.
…
Декабрь 2018. К этому времени мы уже купили новую квартиру и просто ждали пока придет бумажка из ДВС о том что нас выселяют.
…
Мы потратили на квартиру 67k + на адвоката и судебные сборы около 10k. 5.5 лет жизни на съемной квартире такого плана нам стоили бы примерно по 400$ за месяц: 26k. То есть, даже при самых оптимистичных подсчетах мы потеряли 50k зелени.
…
Предлагаю читателям поступать мудро и учиться на ошибках других.
Ссылка на лонгрид: https://www.rozhkov.me/post/how-i-lost-appartment/
Блог Вови Рожкова
Как у меня отобрали честно купленную квартиру
Я уже много раз упоминал о том что потерял хату: на стримах, в постах, чате
канала. Пришло время подробно рассказать что произошло, как развивались события,
и какие ошибки я совершил. Поехали.
Поиск
Февраль 2013 года, Киев, Украина. Хозяева квартиры, которую…
канала. Пришло время подробно рассказать что произошло, как развивались события,
и какие ошибки я совершил. Поехали.
Поиск
Февраль 2013 года, Киев, Украина. Хозяева квартиры, которую…
Смешные тестовые задания
Недавно на доу одна веб-студия претендующая на некую эксклюзивность опубликовала статью о процессах найма. В частности, кроме всякого корпоративного буллшита про "culture fit" и "мы берем только тех людей, которые хотят к нам попасть" было упоминание того, что они дают тестовое задание.
Общественность естественно моментально возмутилась. "Как вы посмели давать тестовое задание, вы же обычный аутсорс, мы к вам не пойдем". Людей можно понять—они годами сидят в болоте нашей индустрии, переходя с одного корабля на другой, работая из трехкомнатных квартир на Оболони, наскоро переоборудованых под коворкинги, под одним Upwork-аккаунтом, меняют конторы как перчатки, а тут какие-то выскочки возомнили, что они выше этого болота и решили перебирать кандидатами, давая им тестовое!
Я решил несколько разбавить дискуссию и упомянул о том, что Basecamp дает тестовое задание, однако только финалистам отбора, связанное с непосредственной задачей из их проектов, но в меньшем масштабе. Ключевой момент тут это "задача взята из повседневной работы компании". Это очень важно. Если контора делает вебаппы—пожалуйста вот задание например на использование стороннего API, если занимается сбором данных—небольшой краулер, если фронтенд—сделай анимашку красивую и тд. Я считаю что тестовые задания давать можно и нужно, главное чтобы они были очень локализованными, непосредственно привязанными к проектным задачам, не требовали больше пары часов на реализацию и давали пространство для дискуссии, то есть предполагали что по заданию можно оценить скилл разработчика и понять насколько его мышление и способ работы подходят вам. Легко можно пройтись по беклогу задач, вспомнить интересное и соорудить из этого что-то адекватное.
Конечно же, если вы обычный аутсорс, то никто такие задания делать не будет. Потому что на другой стороне улицы берут за красивое CV. Поэтому тестовое сильно сокращает круг потенциальных кандидатов, но если вы за качество против количества, то это может быть полезным.
Я негативно отношусь к вайтбоардинг-собесам и заданиям, не связанным с проектами компании. Алгоритмы и прочая ерунда, которая не имеет отношения к работе, на мой взгляд никак не показывает возможности и знания разработчика и не раскрывает его. То есть, тестом на вращение дерева можно только понять умеет ли человек вращать деревья и всё. Часто ли бизнесу надо вращать деревья? Вряд ли. Впрочем, у больших западных контор свои приколы, там так принято, об этом и без меня написали.
Так вот, чуть позже в тред пришел директор компании и написал что тестовое задание у них это "реализуйте алгоритм, который возьмет аррай и подвинет все нули в нём в конец". Вот так элитная бутиковая вебстудия превратилась в каргокультистов воннаби-фаангеров.
Недавно на доу одна веб-студия претендующая на некую эксклюзивность опубликовала статью о процессах найма. В частности, кроме всякого корпоративного буллшита про "culture fit" и "мы берем только тех людей, которые хотят к нам попасть" было упоминание того, что они дают тестовое задание.
Общественность естественно моментально возмутилась. "Как вы посмели давать тестовое задание, вы же обычный аутсорс, мы к вам не пойдем". Людей можно понять—они годами сидят в болоте нашей индустрии, переходя с одного корабля на другой, работая из трехкомнатных квартир на Оболони, наскоро переоборудованых под коворкинги, под одним Upwork-аккаунтом, меняют конторы как перчатки, а тут какие-то выскочки возомнили, что они выше этого болота и решили перебирать кандидатами, давая им тестовое!
Я решил несколько разбавить дискуссию и упомянул о том, что Basecamp дает тестовое задание, однако только финалистам отбора, связанное с непосредственной задачей из их проектов, но в меньшем масштабе. Ключевой момент тут это "задача взята из повседневной работы компании". Это очень важно. Если контора делает вебаппы—пожалуйста вот задание например на использование стороннего API, если занимается сбором данных—небольшой краулер, если фронтенд—сделай анимашку красивую и тд. Я считаю что тестовые задания давать можно и нужно, главное чтобы они были очень локализованными, непосредственно привязанными к проектным задачам, не требовали больше пары часов на реализацию и давали пространство для дискуссии, то есть предполагали что по заданию можно оценить скилл разработчика и понять насколько его мышление и способ работы подходят вам. Легко можно пройтись по беклогу задач, вспомнить интересное и соорудить из этого что-то адекватное.
Конечно же, если вы обычный аутсорс, то никто такие задания делать не будет. Потому что на другой стороне улицы берут за красивое CV. Поэтому тестовое сильно сокращает круг потенциальных кандидатов, но если вы за качество против количества, то это может быть полезным.
Я негативно отношусь к вайтбоардинг-собесам и заданиям, не связанным с проектами компании. Алгоритмы и прочая ерунда, которая не имеет отношения к работе, на мой взгляд никак не показывает возможности и знания разработчика и не раскрывает его. То есть, тестом на вращение дерева можно только понять умеет ли человек вращать деревья и всё. Часто ли бизнесу надо вращать деревья? Вряд ли. Впрочем, у больших западных контор свои приколы, там так принято, об этом и без меня написали.
Так вот, чуть позже в тред пришел директор компании и написал что тестовое задание у них это "реализуйте алгоритм, который возьмет аррай и подвинет все нули в нём в конец". Вот так элитная бутиковая вебстудия превратилась в каргокультистов воннаби-фаангеров.
Продавець
Кілька років тому на ретріті я познайомився з чоловіком. Він представився власником аутсорс компанії, що “робить все“: сайти, мобільні ігри, апки. Розговорилися і він поділився болем: відсутністю технічної експертизи та техліда який би це закрив. Додав що чудово продає і може продати будь-який проект, але з реалізацією є складнощі. Домовилися зустрітися ще раз.
Приїзжаю до них у офіс і бачу купу джунів на жорстких кріслах. Ще в наявності було декілька ПМ-ів та «сейлзів». Говорю з програмістами, з'ясовується що задачі не трекаються, про git ніхто знає, вимоги розробники з'ясовують самостійно у клієнта в скайпі, один програміст може працювати на декількох проектах одночасно і так далі.
Я тоді був наївний і вирішив що роботягам допоможе впровадження таск-трекера, аджайла, CI/CD і так далі. Також всі вони працювали за старими та повільними комп'ютерами і лептопами. Я негайно повідомив про це все пану директору, очікуючи що він дослухається до рекомендацій, та пообіцяв забігти в контору ще, щоб мотивувати працівників та надавати технічні консультації.
Деякий час потому ситуація стала прояснятись. Власник продавав проекти (в основному на локальний ринок), обіцяв зробити все, що просив клієнт, у нереальні терміни та за низьку вартість. Брав передплату. На передплату винаймав джунів по 300-500$ і садив їх робити проект. У джунів нічого не виходило, дедлайни зривались, клієнти або відмовлялися платити, або розривали співпрацю з компанією, а деякі подавали в суд. Проект кидали та шукали наступного клієнта. Хазяїн та його дружина (вона ж «головний ПМ») нічого не розуміли ні в розробці, ні в управлінні проектами, та змушені були покладатися на знання джунів.
Мої поради їм були непотрібні (особливо «купіть нормальні комп'ютери» та «найміть сеньйора»), їм потрібно було щоб я прийшов та зробив роботу, з якою ніхто не міг впоратися. З рекомендацій взяли тільки джиру, за яку незабаром перестали платити.
Через кілька місяців після мого першого візиту, в них виник касовий розрив. Старі клієнти не хотіли платити гроші, нові не заходили, або для того щоб нові зайшли, потрібно було робити деми, на яких не було програмістів. Перестали платити зарплати, програмісти почали бухтіти. Стали відомими також цікаві подробиці комунікації власників з клієнтами—так, одному з них вони погрожували не віддати сорци гри і вимагали грошей. Невдовзі контора припинила своє існування. Практично всі звільнилися, а власники зробили ребрендінг. Після цього я з ними не спілкувався.
Вчора мені скинули пост у ФБ, де той самий чоловік представляється керівником великої студії розробки, заснованої багато років тому, з офісами у Штатах та Англії, 180 програмістами, та пропонує клієнтам джунів по 15$/год. Пошукавши, я побачив вже знайому схему—5 працівників на лінкедіні, двоє з яких це наш продавець так його дружина, решта—андроїд джуни. В портфоліо ігри-клони, а в блоці «Vision»—фотка головного героя з запальним спічем про місію «компанії» та високу кваліфікацію «команди».
Всі ці роки вони працювали за однією схемою: робили компанію, продавали нереальні проекти, знаходили джунів, видавали низькоякісний продукт, стикались з пресингом з боку клієнтів, робили ребрендінг, goto 1. Судячи з всього, їм вдавалось на цьому заробляти. Мене захоплює впертість та майстерність нашого продавця. Якби в мене було б стільки енергії, я би вже напевне в космос полетів. А він за багато років так нічому і не навчився, і залишився на одному рівні—розробці казуальних «ігор» та аутстафі людей.
#кулсторі
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot
Кілька років тому на ретріті я познайомився з чоловіком. Він представився власником аутсорс компанії, що “робить все“: сайти, мобільні ігри, апки. Розговорилися і він поділився болем: відсутністю технічної експертизи та техліда який би це закрив. Додав що чудово продає і може продати будь-який проект, але з реалізацією є складнощі. Домовилися зустрітися ще раз.
Приїзжаю до них у офіс і бачу купу джунів на жорстких кріслах. Ще в наявності було декілька ПМ-ів та «сейлзів». Говорю з програмістами, з'ясовується що задачі не трекаються, про git ніхто знає, вимоги розробники з'ясовують самостійно у клієнта в скайпі, один програміст може працювати на декількох проектах одночасно і так далі.
Я тоді був наївний і вирішив що роботягам допоможе впровадження таск-трекера, аджайла, CI/CD і так далі. Також всі вони працювали за старими та повільними комп'ютерами і лептопами. Я негайно повідомив про це все пану директору, очікуючи що він дослухається до рекомендацій, та пообіцяв забігти в контору ще, щоб мотивувати працівників та надавати технічні консультації.
Деякий час потому ситуація стала прояснятись. Власник продавав проекти (в основному на локальний ринок), обіцяв зробити все, що просив клієнт, у нереальні терміни та за низьку вартість. Брав передплату. На передплату винаймав джунів по 300-500$ і садив їх робити проект. У джунів нічого не виходило, дедлайни зривались, клієнти або відмовлялися платити, або розривали співпрацю з компанією, а деякі подавали в суд. Проект кидали та шукали наступного клієнта. Хазяїн та його дружина (вона ж «головний ПМ») нічого не розуміли ні в розробці, ні в управлінні проектами, та змушені були покладатися на знання джунів.
Мої поради їм були непотрібні (особливо «купіть нормальні комп'ютери» та «найміть сеньйора»), їм потрібно було щоб я прийшов та зробив роботу, з якою ніхто не міг впоратися. З рекомендацій взяли тільки джиру, за яку незабаром перестали платити.
Через кілька місяців після мого першого візиту, в них виник касовий розрив. Старі клієнти не хотіли платити гроші, нові не заходили, або для того щоб нові зайшли, потрібно було робити деми, на яких не було програмістів. Перестали платити зарплати, програмісти почали бухтіти. Стали відомими також цікаві подробиці комунікації власників з клієнтами—так, одному з них вони погрожували не віддати сорци гри і вимагали грошей. Невдовзі контора припинила своє існування. Практично всі звільнилися, а власники зробили ребрендінг. Після цього я з ними не спілкувався.
Вчора мені скинули пост у ФБ, де той самий чоловік представляється керівником великої студії розробки, заснованої багато років тому, з офісами у Штатах та Англії, 180 програмістами, та пропонує клієнтам джунів по 15$/год. Пошукавши, я побачив вже знайому схему—5 працівників на лінкедіні, двоє з яких це наш продавець так його дружина, решта—андроїд джуни. В портфоліо ігри-клони, а в блоці «Vision»—фотка головного героя з запальним спічем про місію «компанії» та високу кваліфікацію «команди».
Всі ці роки вони працювали за однією схемою: робили компанію, продавали нереальні проекти, знаходили джунів, видавали низькоякісний продукт, стикались з пресингом з боку клієнтів, робили ребрендінг, goto 1. Судячи з всього, їм вдавалось на цьому заробляти. Мене захоплює впертість та майстерність нашого продавця. Якби в мене було б стільки енергії, я би вже напевне в космос полетів. А він за багато років так нічому і не навчився, і залишився на одному рівні—розробці казуальних «ігор» та аутстафі людей.
#кулсторі
permalink | @full_of_hatred
👇Щоденні донати💰на ЗСУ🪖
🫡@Donate1024Bot
👍6
Поддержка малого бизнеса
Вторую неделю как у нас ослабили карантинные меры и разрешили работу фитнес-залов. Я занимаюсь в небольшом клубе на моём районе, и вот наконец-то возобновил тренировки. Мой абонемент как раз заканчивался и надо было его продлевать.
У большинства людей из нашего общества есть такой стереотип—если ты знаком с предпринимателем—то ожидай от него скидки на услуги, "за знакомство". Примеров вы можете вспомнить сами много. Не знаю, откуда растут ноги у этой славной традиции, возможно еще с тех времен, когда все люди работали на государство и скидка минусовалась не из кармана хозяина бизнеса, а из бюджета государства. Государство большое—стерпит. Может и нет, но суть такая—если ты знакомый, изволь меня обслужить (или продать) по себестоимости. Причем этот стереотип загадочным образом работает в обе стороны.
Возвращаясь к абонементу. Я хожу в зал с прошлого сентября и довольно стабильно (скорее всего я если не самый активный посетитель, то уж точно в первой десятке), то есть "знаком" с хозяином (он же главный тренер). Когда я сказал, что хочу продлить абонемент, то он ответил мне "так, ты у нас уже давно, так что вот тебе скидос". Другой человек на моем месте конечно бы согласился, или сам бы напросился на скидку, но я отвечал так: "для меня эти 10% (~700 грн за 3 месяца) не являются суммой, значимой для бюджета, но я заинтересован в том, чтобы ваш зал продолжал работать и был в порядке. Скидка ведь идет из вашего кармана, это ваш убыток. Интерес у меня стратегический—чтобы ваши дела шли хорошо. Поэтому я заплачу полную стоимость".
Моя позиция такая—если вы знакомы с предпринимателем, если вам нравится то, что он делает и конечно же если вам позволяют средства—надо обязательно его поддерживать и по возможности "доплачивать". Потому что если вы попросите скидку и получите тактическое преимущество сегодня, то завтра его дело закроется из-за убытков. Именно так и произошло с пространством "vegan boom" в Киеве, которое просуществовало около года и находилось в центре, на Театральной. Там располагались в вега-кафешки и ритейл "эко" товаров. Но публика, которая туда ходила, "идейная", всякие экоактивисты, йоги и прочие ребята не понимали того, что когда они просят сделать им скидос на еде, то они убивают экономику заведения. Да, друзья, да, знакомые, да, общие идеи и движуха. Но если ты сегодня не поддержишь деньгами своего друга, то завтра он будет вынужден закрыться и съехать. Потому что идейность идейностью и дружба дружбой, а вокруг нас мир, которому наплевать на всё это и который видит только одно—цифры на счету.
Всякий труд должен быть достойно оплачен.
Вторую неделю как у нас ослабили карантинные меры и разрешили работу фитнес-залов. Я занимаюсь в небольшом клубе на моём районе, и вот наконец-то возобновил тренировки. Мой абонемент как раз заканчивался и надо было его продлевать.
У большинства людей из нашего общества есть такой стереотип—если ты знаком с предпринимателем—то ожидай от него скидки на услуги, "за знакомство". Примеров вы можете вспомнить сами много. Не знаю, откуда растут ноги у этой славной традиции, возможно еще с тех времен, когда все люди работали на государство и скидка минусовалась не из кармана хозяина бизнеса, а из бюджета государства. Государство большое—стерпит. Может и нет, но суть такая—если ты знакомый, изволь меня обслужить (или продать) по себестоимости. Причем этот стереотип загадочным образом работает в обе стороны.
Возвращаясь к абонементу. Я хожу в зал с прошлого сентября и довольно стабильно (скорее всего я если не самый активный посетитель, то уж точно в первой десятке), то есть "знаком" с хозяином (он же главный тренер). Когда я сказал, что хочу продлить абонемент, то он ответил мне "так, ты у нас уже давно, так что вот тебе скидос". Другой человек на моем месте конечно бы согласился, или сам бы напросился на скидку, но я отвечал так: "для меня эти 10% (~700 грн за 3 месяца) не являются суммой, значимой для бюджета, но я заинтересован в том, чтобы ваш зал продолжал работать и был в порядке. Скидка ведь идет из вашего кармана, это ваш убыток. Интерес у меня стратегический—чтобы ваши дела шли хорошо. Поэтому я заплачу полную стоимость".
Моя позиция такая—если вы знакомы с предпринимателем, если вам нравится то, что он делает и конечно же если вам позволяют средства—надо обязательно его поддерживать и по возможности "доплачивать". Потому что если вы попросите скидку и получите тактическое преимущество сегодня, то завтра его дело закроется из-за убытков. Именно так и произошло с пространством "vegan boom" в Киеве, которое просуществовало около года и находилось в центре, на Театральной. Там располагались в вега-кафешки и ритейл "эко" товаров. Но публика, которая туда ходила, "идейная", всякие экоактивисты, йоги и прочие ребята не понимали того, что когда они просят сделать им скидос на еде, то они убивают экономику заведения. Да, друзья, да, знакомые, да, общие идеи и движуха. Но если ты сегодня не поддержишь деньгами своего друга, то завтра он будет вынужден закрыться и съехать. Потому что идейность идейностью и дружба дружбой, а вокруг нас мир, которому наплевать на всё это и который видит только одно—цифры на счету.
Всякий труд должен быть достойно оплачен.
Стартап, вязнущий в болоте микросервисов и SPA фреймворков 1/2
Недавно я посмотрел интервью с DHH, это был keynote на (онлайн) конференции RailsConf 2020. DHH это автор и мейнтейнер веб-фреймворка Ruby On Rails, CTO компании Basecamp. Известен как адвокат фулл-стек разработки, монолитных архитектур, profitable from day zero подхода и противник венчурных денег. В интервью он рассказывает, что современный зоопарк веб-технологий, узкая специализация ("реакт разработчик"), раздутость команд и оверинжиниринг это следствие бесконтрольного использования венчурного капитала. Вот небольшая история в тему.
Один мой знакомый несколько лет назад пошел работать в стартап. CTO стартапа был очень умный мужик, который до этого работал и в маленьких и больших компаниях, и разрабатывал на куче технологий. Знакомый был первым программистом в стартапе, и когда дошло дело до работы, то CTO ему говорит: "короче, берем микросервисную архитектуру, ядро пишем на Java, а для хранения данных возьмем key-column-value базу. Нам нужно будет быстро масштабироваться, а как известно SQL не скейлится. На фронтенде будем использовать реакт". Суть стартапа: веб-приложение, без рокет саенса, без особой реактивщины или интерактивности.
Хозяин-барин, подумал знакомый, засучил рукава и принялся за работу. Так как "микросервисы" не задеплоишь на хероку просто так, то пришлось решать кучу задач, не имеющих непосредственного отношения к приложению: подбирать фреймворки для service discovery и rpc, организовывать CI/CD и infrastructure-as-a-code, подымать разные окружения, и так далее. До непосредственно работы над продуктом дело не особо доходило. Наняли еще пару программистов, а знакомому так понравилась вся эта инфраструктурная фигня, что он не особо-то и расстраивался.
Через пол-года, когда понаписали кучу REST API которые вроде как-то работали, наняли фронтенд ребят. Ребята засели и еще пол-года делали базовый набор компонент чтобы можно было заверстать страничку регистрации и логина. Ну и еще личный кабинет. К этому времени количество микросервисов выросло до 6 или 7 и уже пришлось делать специальный микросервис-аггрегатор запросов, который упрощал фронтендерам работу. Отсутствие джоинов и транзакций в замечательной масштабируемой NoSQL базе порождало кучу баттхерта и костылей-воркэраундов в коде, замедляло разработку, а потом, как оказалось еще и здорово тормозило всё приложение. Скорость разработки была просто черепашьей, два года спустя запустили все в продакшн, но никакого миллиона пользователей не пришло. Сотни нефти тратились на AWS в двух AZ просто потому что почему бы и нет, ведь нужна была redundancy и durability.
В это время пара дата саентистов которые ковырялись в своем питоньем коде и постгресе посмеивалась над ребятами и троллила их утверждением "мы бы за месяц все переписали на постгресе и фласке". Знакомый тогда еще не понял дзена фуллстек вебразработки и рьяно оппонировал им. Заткнуться пришлось когда датасаенс команда за пару месяцев выкатила админку для внутренних дел, которая по сложности превосходила базовое приложение.
Недавно я посмотрел интервью с DHH, это был keynote на (онлайн) конференции RailsConf 2020. DHH это автор и мейнтейнер веб-фреймворка Ruby On Rails, CTO компании Basecamp. Известен как адвокат фулл-стек разработки, монолитных архитектур, profitable from day zero подхода и противник венчурных денег. В интервью он рассказывает, что современный зоопарк веб-технологий, узкая специализация ("реакт разработчик"), раздутость команд и оверинжиниринг это следствие бесконтрольного использования венчурного капитала. Вот небольшая история в тему.
Один мой знакомый несколько лет назад пошел работать в стартап. CTO стартапа был очень умный мужик, который до этого работал и в маленьких и больших компаниях, и разрабатывал на куче технологий. Знакомый был первым программистом в стартапе, и когда дошло дело до работы, то CTO ему говорит: "короче, берем микросервисную архитектуру, ядро пишем на Java, а для хранения данных возьмем key-column-value базу. Нам нужно будет быстро масштабироваться, а как известно SQL не скейлится. На фронтенде будем использовать реакт". Суть стартапа: веб-приложение, без рокет саенса, без особой реактивщины или интерактивности.
Хозяин-барин, подумал знакомый, засучил рукава и принялся за работу. Так как "микросервисы" не задеплоишь на хероку просто так, то пришлось решать кучу задач, не имеющих непосредственного отношения к приложению: подбирать фреймворки для service discovery и rpc, организовывать CI/CD и infrastructure-as-a-code, подымать разные окружения, и так далее. До непосредственно работы над продуктом дело не особо доходило. Наняли еще пару программистов, а знакомому так понравилась вся эта инфраструктурная фигня, что он не особо-то и расстраивался.
Через пол-года, когда понаписали кучу REST API которые вроде как-то работали, наняли фронтенд ребят. Ребята засели и еще пол-года делали базовый набор компонент чтобы можно было заверстать страничку регистрации и логина. Ну и еще личный кабинет. К этому времени количество микросервисов выросло до 6 или 7 и уже пришлось делать специальный микросервис-аггрегатор запросов, который упрощал фронтендерам работу. Отсутствие джоинов и транзакций в замечательной масштабируемой NoSQL базе порождало кучу баттхерта и костылей-воркэраундов в коде, замедляло разработку, а потом, как оказалось еще и здорово тормозило всё приложение. Скорость разработки была просто черепашьей, два года спустя запустили все в продакшн, но никакого миллиона пользователей не пришло. Сотни нефти тратились на AWS в двух AZ просто потому что почему бы и нет, ведь нужна была redundancy и durability.
В это время пара дата саентистов которые ковырялись в своем питоньем коде и постгресе посмеивалась над ребятами и троллила их утверждением "мы бы за месяц все переписали на постгресе и фласке". Знакомый тогда еще не понял дзена фуллстек вебразработки и рьяно оппонировал им. Заткнуться пришлось когда датасаенс команда за пару месяцев выкатила админку для внутренних дел, которая по сложности превосходила базовое приложение.
❤🔥5😁2
Стартап, вязнущий в болоте микросервисов и SPA фреймворков 2/2
Потом пришли новые продукт менеджера, сменили направление продукта и начали думать как итерироваться побыстрее. CTO ушел заниматься другим проектом, пришёл новый. Переписали всё на Vue. Живут всё так же с микросервисами и джавой, как-то это всё дело едет и спустя 4 года после старта вроде даже приносит деньги. Большая часть исходной команды уже давно срулила по своим делам, новые люди делают новые вещи.
Если ретроспективно смотреть сейчас на те дела, то мне это кажется чистым безумием. Для стартапа, ключевой характеристикой которого является быстрый запуск и итерация идей, берется самая дорогая (с точки зрения стоимости разработчиков), медленная в разработке технология—Java. Для фронтенда берется тоже недешевая и медленная в разработке штука (для отрисовки кнопки надо писать кучу бойлерплейта). Чтобы подсыпать загустителя в и так уже почти битумное болото, выбирается проприетарная NoSQL база данных, которая еще сильнее замедляет и усложняет разработку. Все это мультиплицируется с помощью микросервисов и микрофронтендов. Минорное изменение задевает три репозитория и требует регенерации схемы данных. Ну и конечно же итоговое решение тормозит. Потому что куча запросов на разные сервисы, потому что NoSQL. Локальная разработка и дебаг превращается в кошмар, developer experience просто отвратительный. В надежде как-то двигать это вперед, раздувается команда. Собраны все грабли из разбросанных по саду земных наслаждений архитектора-астронавта. Микросервисы не приносят никакого профита, только бабки зря проедают. Собрано полное буллшит-бинго облачного архитектора. Все, просто все как известном ролике только не смешно ни разу.
Мы со знакомым наверное чего-то не знали. Наверное были какие-то причины, побудившие выбрать такой медленный с точки зрения разработки стек. Но после того как я сам разработал на Rails и запустил несколько небольших проектов (но зарабатывающих для моего клиента деньги) я абсолютно и совершенно не понимаю как так получилось. Потом прикидывали — MVP того уровня который делала толпа узкоспецализированных людей мы бы могли забабахать вдвоём за пару месяцев. Если бы тот стартап запускался сейчас, то наверное в копилку добавился бы Kubernetes, Service Mesh и еще какая-нибудь дичь, дабы окончательно обездвижить золотую разработку.
В интервью DHH говорит что в команде которая работает над их сервисом электронной почты Hey, 8 разработчиков: два андроид разработчика, два ios разработчика, 4 разработчика "web core" (как он это назвал). 8 разработчиков делают продукт—почтовый клиент—для всех платформ. Это больше, чем было в команде моего знакомого. Там только бекендеров было около 8, а еще фронтенд…Про nomadlist, remoteok я уже говорил. Эти штуки сделал и запустил один человек. В одиночку.
Это не нытье против микросервисов или spa, или кубернетеса. Это скорбь об утраченном времени, о человеко-годах, потраченных впустую, о неуместном использовании инструментов. Это скорбь о других стартапах, убитых несвоевременным использованием google-scale технологий.
Потом пришли новые продукт менеджера, сменили направление продукта и начали думать как итерироваться побыстрее. CTO ушел заниматься другим проектом, пришёл новый. Переписали всё на Vue. Живут всё так же с микросервисами и джавой, как-то это всё дело едет и спустя 4 года после старта вроде даже приносит деньги. Большая часть исходной команды уже давно срулила по своим делам, новые люди делают новые вещи.
Если ретроспективно смотреть сейчас на те дела, то мне это кажется чистым безумием. Для стартапа, ключевой характеристикой которого является быстрый запуск и итерация идей, берется самая дорогая (с точки зрения стоимости разработчиков), медленная в разработке технология—Java. Для фронтенда берется тоже недешевая и медленная в разработке штука (для отрисовки кнопки надо писать кучу бойлерплейта). Чтобы подсыпать загустителя в и так уже почти битумное болото, выбирается проприетарная NoSQL база данных, которая еще сильнее замедляет и усложняет разработку. Все это мультиплицируется с помощью микросервисов и микрофронтендов. Минорное изменение задевает три репозитория и требует регенерации схемы данных. Ну и конечно же итоговое решение тормозит. Потому что куча запросов на разные сервисы, потому что NoSQL. Локальная разработка и дебаг превращается в кошмар, developer experience просто отвратительный. В надежде как-то двигать это вперед, раздувается команда. Собраны все грабли из разбросанных по саду земных наслаждений архитектора-астронавта. Микросервисы не приносят никакого профита, только бабки зря проедают. Собрано полное буллшит-бинго облачного архитектора. Все, просто все как известном ролике только не смешно ни разу.
Мы со знакомым наверное чего-то не знали. Наверное были какие-то причины, побудившие выбрать такой медленный с точки зрения разработки стек. Но после того как я сам разработал на Rails и запустил несколько небольших проектов (но зарабатывающих для моего клиента деньги) я абсолютно и совершенно не понимаю как так получилось. Потом прикидывали — MVP того уровня который делала толпа узкоспецализированных людей мы бы могли забабахать вдвоём за пару месяцев. Если бы тот стартап запускался сейчас, то наверное в копилку добавился бы Kubernetes, Service Mesh и еще какая-нибудь дичь, дабы окончательно обездвижить золотую разработку.
В интервью DHH говорит что в команде которая работает над их сервисом электронной почты Hey, 8 разработчиков: два андроид разработчика, два ios разработчика, 4 разработчика "web core" (как он это назвал). 8 разработчиков делают продукт—почтовый клиент—для всех платформ. Это больше, чем было в команде моего знакомого. Там только бекендеров было около 8, а еще фронтенд…Про nomadlist, remoteok я уже говорил. Эти штуки сделал и запустил один человек. В одиночку.
Это не нытье против микросервисов или spa, или кубернетеса. Это скорбь об утраченном времени, о человеко-годах, потраченных впустую, о неуместном использовании инструментов. Это скорбь о других стартапах, убитых несвоевременным использованием google-scale технологий.
❤🔥5
Бардак
Одна из самых серьезных опасностей, которая будет стоять на вашем пути, если вы перейдете на парттайм работу или ± гибкий график (в любом формате)—это бесполезное прожигание свободного времени.
Офисный человек скован рамками рабочего дня. Утром ему нужно появиться в офисе, днем там присутствовать, вечером уйти. Неважно, продуктивно ли прошел день, в конце месяца его ожидает зарплата. Эти рамки являются одновременно и благословением и проклятием. Благословением—потому что не нужно думать, что будет завтра, завтра надо на работу утром идти. Снимается когнитивная нагрузка от сложностей выбора. Проклятием—потому что внезапно перестает хватать времени на себя. Уборка квартиры и поход за продуктами приходятся на субботу, "отдых"—на воскресенье, личные дела надо решать до или после работы—утром или вечером, в итоге на "жизнь" остается десяток часов в неделю.
Парттайм человек скован рамками дедлайнов по своим задачам. Каждый день нужно определять самое важное—что делать сейчас, а что можно отложить. Личные дела встраиваются в поток задач. И вот здесь вас подстерегает ловушка—если не упорядочивать свой день и график, то есть риск просто проболтаться возле компьютера целый день—как в офисе, только сделав мало работы (в пересчёте на деньги). Когда у тебя в распоряжении все свободное время, то нужно приложить немалые усилия, для того, чтобы привнести в распорядок дня структуру, которая позволит эффективно распределять усилия и не скатываться в прокрастинацию. Обязательно нужно иметь какие-то свои дела, увлечения, или что-то другое, чем можно будет занять свободное время, якоря, вокруг которых будет строиться день.
Мой день сейчас—это бардак. Сколько уж времени прошло, а выйти на какой-то предсказуемый уровень производительности мне так же сложно. У меня большой поток входящих задач, но я редко когда могу настроиться, например, на то, чтобы заняться ими до обеда, потом полностью отключиться и сфокусироваться на других делах—работе по дому, или других проектах, не связанных с разработкой. Очень часто работа над задачами растягивается на 12-14 часов мелкими кусочками, в перерывах я делаю домашние дела, занимаюсь чем-то своим, хожу на тренировки и так далее. Из-за этого, хотя непосредственно на работу тратится мало времени, мозг не переключается между режимами и я превращаюсь в бурлака, который тащит тяжеленную баржу по бесконечной реке, прерываясь на скомканное поглощение пищи и рассматривание окружающих красот, но никогда не отпускаю лямку.
Временами у меня получается хорошая структура, и я делаю много всего, а временами мрачно туплю в монитор, не в силах ни встать и заняться чем-то другим, ни взяться и сделать задачу.
Осознание проблемы—первый этап решения, и я над ним работаю.
Одна из самых серьезных опасностей, которая будет стоять на вашем пути, если вы перейдете на парттайм работу или ± гибкий график (в любом формате)—это бесполезное прожигание свободного времени.
Офисный человек скован рамками рабочего дня. Утром ему нужно появиться в офисе, днем там присутствовать, вечером уйти. Неважно, продуктивно ли прошел день, в конце месяца его ожидает зарплата. Эти рамки являются одновременно и благословением и проклятием. Благословением—потому что не нужно думать, что будет завтра, завтра надо на работу утром идти. Снимается когнитивная нагрузка от сложностей выбора. Проклятием—потому что внезапно перестает хватать времени на себя. Уборка квартиры и поход за продуктами приходятся на субботу, "отдых"—на воскресенье, личные дела надо решать до или после работы—утром или вечером, в итоге на "жизнь" остается десяток часов в неделю.
Парттайм человек скован рамками дедлайнов по своим задачам. Каждый день нужно определять самое важное—что делать сейчас, а что можно отложить. Личные дела встраиваются в поток задач. И вот здесь вас подстерегает ловушка—если не упорядочивать свой день и график, то есть риск просто проболтаться возле компьютера целый день—как в офисе, только сделав мало работы (в пересчёте на деньги). Когда у тебя в распоряжении все свободное время, то нужно приложить немалые усилия, для того, чтобы привнести в распорядок дня структуру, которая позволит эффективно распределять усилия и не скатываться в прокрастинацию. Обязательно нужно иметь какие-то свои дела, увлечения, или что-то другое, чем можно будет занять свободное время, якоря, вокруг которых будет строиться день.
Мой день сейчас—это бардак. Сколько уж времени прошло, а выйти на какой-то предсказуемый уровень производительности мне так же сложно. У меня большой поток входящих задач, но я редко когда могу настроиться, например, на то, чтобы заняться ими до обеда, потом полностью отключиться и сфокусироваться на других делах—работе по дому, или других проектах, не связанных с разработкой. Очень часто работа над задачами растягивается на 12-14 часов мелкими кусочками, в перерывах я делаю домашние дела, занимаюсь чем-то своим, хожу на тренировки и так далее. Из-за этого, хотя непосредственно на работу тратится мало времени, мозг не переключается между режимами и я превращаюсь в бурлака, который тащит тяжеленную баржу по бесконечной реке, прерываясь на скомканное поглощение пищи и рассматривание окружающих красот, но никогда не отпускаю лямку.
Временами у меня получается хорошая структура, и я делаю много всего, а временами мрачно туплю в монитор, не в силах ни встать и заняться чем-то другим, ни взяться и сделать задачу.
Осознание проблемы—первый этап решения, и я над ним работаю.
Мультипроектность
Еще одна особенность жизни независимого разработчика-консультанта—это параллельная работа с разными клиентами над разными проектами.
В сложные дни я работал с 4мя клиентами, у некоторых из них было сразу по несколько проектов, которые я разрабатывал или поддерживал. Многие проекты были написаны на разных языках.
Очевидно, что работа над чем-то одним эффективнее всего. В голову всегда загружен только один контекст, со временем многие места запоминаются и разработка идет на автомате. Во времена работы в энтерпрайзе я мог по памяти назвать названия классов и методов, в которые нужно смотреть для реализации той или иной фичи. Работа идет с одним языком и базовые конструкции все время на кончиках пальцев.
Если вам не повезло работать на проекте с микросервисами в гетерогенной среде, то появляются полиглотопроблемы(https://xn--r1a.website/full_of_hatred/227)—хотя контекст задач одинаковый, нужно уже переключаться между разными языками и фреймворками, и это неизбежно снижает продуктивность.
Ну и апофеозом является работа на разных проектах. В голову нужно постоянно перегружать контексты задач и сред, работа может прерываться запросами от других проектов, продуктивность неизбежно ползет вниз.
Если бы у меня был выбор—я бы конечно работал только над одним проектом, написанным на одном стеке. Желательно, несколько месяцев подряд. А потом можно и переключиться.
Уже довольно долгое время я ежедневно тружусь одновременно над 2.5 совершенно разными проектами и стараюсь держаться возле стека Ruby On Rails+Java. Хотя количество технологий минимизировано, все равно так или иначе надо лазить в другие штуки и это как ни крути снижает эффективность.
Другой вопрос—это распределение времени между проектами. С этим я справляюсь просто—не беру на себя слишком много и стараюсь не доводить дела до совсем-совсем дедлайна, поэтому у меня не бывает такого, что приходится жертвовать одним проектом в угоду другого. Я склонен давать оптимистичные обещания и набирать слишком много, но в последнее время лучше с этим справляюсь.
Складывать все яйца в одну корзину я не могу по понятным причинам, поэтому приходится жить как есть, но идеал к которому я стремлюсь—это один стек и один проект. Желательно, свой :)
Еще одна особенность жизни независимого разработчика-консультанта—это параллельная работа с разными клиентами над разными проектами.
В сложные дни я работал с 4мя клиентами, у некоторых из них было сразу по несколько проектов, которые я разрабатывал или поддерживал. Многие проекты были написаны на разных языках.
Очевидно, что работа над чем-то одним эффективнее всего. В голову всегда загружен только один контекст, со временем многие места запоминаются и разработка идет на автомате. Во времена работы в энтерпрайзе я мог по памяти назвать названия классов и методов, в которые нужно смотреть для реализации той или иной фичи. Работа идет с одним языком и базовые конструкции все время на кончиках пальцев.
Если вам не повезло работать на проекте с микросервисами в гетерогенной среде, то появляются полиглотопроблемы(https://xn--r1a.website/full_of_hatred/227)—хотя контекст задач одинаковый, нужно уже переключаться между разными языками и фреймворками, и это неизбежно снижает продуктивность.
Ну и апофеозом является работа на разных проектах. В голову нужно постоянно перегружать контексты задач и сред, работа может прерываться запросами от других проектов, продуктивность неизбежно ползет вниз.
Если бы у меня был выбор—я бы конечно работал только над одним проектом, написанным на одном стеке. Желательно, несколько месяцев подряд. А потом можно и переключиться.
Уже довольно долгое время я ежедневно тружусь одновременно над 2.5 совершенно разными проектами и стараюсь держаться возле стека Ruby On Rails+Java. Хотя количество технологий минимизировано, все равно так или иначе надо лазить в другие штуки и это как ни крути снижает эффективность.
Другой вопрос—это распределение времени между проектами. С этим я справляюсь просто—не беру на себя слишком много и стараюсь не доводить дела до совсем-совсем дедлайна, поэтому у меня не бывает такого, что приходится жертвовать одним проектом в угоду другого. Я склонен давать оптимистичные обещания и набирать слишком много, но в последнее время лучше с этим справляюсь.
Складывать все яйца в одну корзину я не могу по понятным причинам, поэтому приходится жить как есть, но идеал к которому я стремлюсь—это один стек и один проект. Желательно, свой :)
❤1
Почему нужно работать в аутсорсе?
- Потому что там разнообразные и большие проекты, часто greenfield, непосредственное общение с мультинациональными командами. Короткие проекты, получаешь опыт и удовольствие от того, что доводишь дело до конца. Если проект не нравится—не беда! Идешь к ресурсному менеджеру и подбираешь себе что-то действительно интересное среди большого портфолио. Прокачиваешься в разных технологиях, подтягиваешь английский. Круто!
Почему не нужно работать в аутсорсе?
- На аутсорс отдают всякое легаси, разговаривать будешь с иностранцами с сильным акцентом, и ежедневное "yellou, hou aRe you?" будет тебе сниться. Придется работать маленьким винтиком в большой системе, и не все части этой системы будут построены с точки зрения здравого смысла. Требования спускают сверху—твое дело—веслать а не думать. Архитектор в Штатах, дба в Индии, интеграция в Китае. На реализацию мелочи надо потратить кучу времени и нервов. Рост в проекте ограничен размером команды, если все тапки уже заняты— ловить нечего. Проект закончился—опять проходи собесы. Интересы компании-аутсорсера противоположны интересам компании-заказчика что может порождать бессмысленную работу ради работы. Политика во все поля. Днище…
- Потому что там разнообразные и большие проекты, часто greenfield, непосредственное общение с мультинациональными командами. Короткие проекты, получаешь опыт и удовольствие от того, что доводишь дело до конца. Если проект не нравится—не беда! Идешь к ресурсному менеджеру и подбираешь себе что-то действительно интересное среди большого портфолио. Прокачиваешься в разных технологиях, подтягиваешь английский. Круто!
Почему не нужно работать в аутсорсе?
- На аутсорс отдают всякое легаси, разговаривать будешь с иностранцами с сильным акцентом, и ежедневное "yellou, hou aRe you?" будет тебе сниться. Придется работать маленьким винтиком в большой системе, и не все части этой системы будут построены с точки зрения здравого смысла. Требования спускают сверху—твое дело—веслать а не думать. Архитектор в Штатах, дба в Индии, интеграция в Китае. На реализацию мелочи надо потратить кучу времени и нервов. Рост в проекте ограничен размером команды, если все тапки уже заняты— ловить нечего. Проект закончился—опять проходи собесы. Интересы компании-аутсорсера противоположны интересам компании-заказчика что может порождать бессмысленную работу ради работы. Политика во все поля. Днище…
Почему нужно работать в стартапе?
- Не тратите время на обмусоливание деталей и ненужную коммуникацию. Чик чик и в продакшен, со скоростью паровоза ФД. Можно самому выбирать технологии и заниматься resume-driven development, пока CTO не видит. Кто первым пришел и не тупит—тот потом станет большим начальником над новыми гребцами, когда всё взлетит. Делаешь продукт от начала до конца самостоятельно, саппортишь продакшен, развиваешься как росток бамбука, пока коллеги-обсосы из других компаний второй год мусолят одно и то же. При правильном процессе сразу видишь как твоя фича конвертируется в бабло и влияешь на продукт. Находишься близко к бизнесу. Через 10 лет вышли на IPO и ты миллионер. В стартапах куются грамотные фуллстек крафтсманы, архитекторы и СТО. Круто!
Почему не нужно работать в стартапе?
- СЕО заставляет овертаймить и "поднажать". Продакшн падает потому что говна навернули всей командой. Денег не плотють потому что мы же стартап откуда у нас деньги. Наняли каких-то джунов, теперь разгребай за ними. Продакт менеджеры и продавцы каждый день меняют требования, кодобазу уже два раза переписали. Лид выгорел и уволился. Занимаешься всем подряд, на девопса и верстальщика нет денег, а ты хочешь сидеть в своей коробочке. Завтра фаундеры сбегают с VCшным кэшем на Багамы и кидают всех на последнюю зарплату. Днище…
- Не тратите время на обмусоливание деталей и ненужную коммуникацию. Чик чик и в продакшен, со скоростью паровоза ФД. Можно самому выбирать технологии и заниматься resume-driven development, пока CTO не видит. Кто первым пришел и не тупит—тот потом станет большим начальником над новыми гребцами, когда всё взлетит. Делаешь продукт от начала до конца самостоятельно, саппортишь продакшен, развиваешься как росток бамбука, пока коллеги-обсосы из других компаний второй год мусолят одно и то же. При правильном процессе сразу видишь как твоя фича конвертируется в бабло и влияешь на продукт. Находишься близко к бизнесу. Через 10 лет вышли на IPO и ты миллионер. В стартапах куются грамотные фуллстек крафтсманы, архитекторы и СТО. Круто!
Почему не нужно работать в стартапе?
- СЕО заставляет овертаймить и "поднажать". Продакшн падает потому что говна навернули всей командой. Денег не плотють потому что мы же стартап откуда у нас деньги. Наняли каких-то джунов, теперь разгребай за ними. Продакт менеджеры и продавцы каждый день меняют требования, кодобазу уже два раза переписали. Лид выгорел и уволился. Занимаешься всем подряд, на девопса и верстальщика нет денег, а ты хочешь сидеть в своей коробочке. Завтра фаундеры сбегают с VCшным кэшем на Багамы и кидают всех на последнюю зарплату. Днище…
Почему нужно работать в продукте?
- Сильная команда. Архитекторы аккуратно рисуют диаграммы, всё чётко. Хайлоад. Суперспециализация, спокойно крутишь свой винтик и не знаешь что там у других. Вышел из офиса—забыл про работу, по дороге домой присматриваешь себе новую корейскую тачку и выбираешь мангал. Можно скинуть ссылку на сайт вашего "продукта" (беттинговой конторы, "геймдева" со слотами или мощного adtech решения) своей маме и знакомым—похвастаться. Низкая текучка—все мотают уже пятый год так точно. Знакомая кодобаза, предсказуемая, размеренная жизнь, посиделки в олдбаре с коллегами в пятницу вечером. Изобретаешь свои фреймворки, придумываешь классные решения. Бизнес аналитиков целый отдел, требования расписаны до мелочей. Круто!
Почему не нужно работать в продукте?
- Грызня между отделами. Платформенная команда переизобретает IoC контейнеры потому что почему бы и нет. Учишь всякое кастомное говно которое никогда в жизни тебе не пригодится. Вместо опенсорса делаем свой велосипед, потому что "опенсорс не скейлится". Нет доступа к продакшену, только вон у того парня. Политика во все поля, груп менеджер проиграл в драке за ресурсы и теперь у вас прибавилось работы. Митинги будут занимать половину твоего рабочего дня, даже если ты простой девелопер. Строгий стек технологий, ничего нового нельзя потому что сверху сидит архитектор-самодур, который последний раз код трогал 10 лет назад. Хочешь роста? Ну куда уж нам принципал инженеров, только в менеджеры… Не хочешь играть в политику? Извини браток, сидеть тебе на саппорте. Компания инертная как танкер с нефтью, изменения аппрувятся месяцами кучей комитетов, всякая инициатива подавляется. После увольнения с этой помойки оказывается что твои углубленные знания внутренних мета-фреймворков никому на рынке не нужны. Днище…
- Сильная команда. Архитекторы аккуратно рисуют диаграммы, всё чётко. Хайлоад. Суперспециализация, спокойно крутишь свой винтик и не знаешь что там у других. Вышел из офиса—забыл про работу, по дороге домой присматриваешь себе новую корейскую тачку и выбираешь мангал. Можно скинуть ссылку на сайт вашего "продукта" (беттинговой конторы, "геймдева" со слотами или мощного adtech решения) своей маме и знакомым—похвастаться. Низкая текучка—все мотают уже пятый год так точно. Знакомая кодобаза, предсказуемая, размеренная жизнь, посиделки в олдбаре с коллегами в пятницу вечером. Изобретаешь свои фреймворки, придумываешь классные решения. Бизнес аналитиков целый отдел, требования расписаны до мелочей. Круто!
Почему не нужно работать в продукте?
- Грызня между отделами. Платформенная команда переизобретает IoC контейнеры потому что почему бы и нет. Учишь всякое кастомное говно которое никогда в жизни тебе не пригодится. Вместо опенсорса делаем свой велосипед, потому что "опенсорс не скейлится". Нет доступа к продакшену, только вон у того парня. Политика во все поля, груп менеджер проиграл в драке за ресурсы и теперь у вас прибавилось работы. Митинги будут занимать половину твоего рабочего дня, даже если ты простой девелопер. Строгий стек технологий, ничего нового нельзя потому что сверху сидит архитектор-самодур, который последний раз код трогал 10 лет назад. Хочешь роста? Ну куда уж нам принципал инженеров, только в менеджеры… Не хочешь играть в политику? Извини браток, сидеть тебе на саппорте. Компания инертная как танкер с нефтью, изменения аппрувятся месяцами кучей комитетов, всякая инициатива подавляется. После увольнения с этой помойки оказывается что твои углубленные знания внутренних мета-фреймворков никому на рынке не нужны. Днище…