Получи случайную криптовалюту за регистрацию!

FEDOR BORSHEV

Логотип телеграм канала @pmdaily — FEDOR BORSHEV F
Логотип телеграм канала @pmdaily — FEDOR BORSHEV
Адрес канала: @pmdaily
Категории: Технологии
Язык: Русский
Количество подписчиков: 24.68K
Описание канала:

Пишу о производстве сложных проектов, управлении продуктами, профессиональном росте программистов.
borshev.com
Связаться со мной — fborshev@pm.me
Реклама не продаётся.

Рейтинги и Отзывы

4.50

2 отзыва

Оценить канал pmdaily и оставить отзыв — могут только зарегестрированные пользователи. Все отзывы проходят модерацию.

5 звезд

1

4 звезд

1

3 звезд

0

2 звезд

0

1 звезд

0


Последние сообщения

2023-06-29 10:45:23 The fast way vs the hard way

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

В вайтишной тематике первая крайность представлена книгами из серии Learning X: the Hard Way. Книги запрещают даже копипастить примеры, мотивируя это тем, что пока не научишься набирать текст без ошибок — не научишься кодить (кек, как им наверное стало грустно после появления GPT-powered кодинг-ассистентов). Вторая крайность — условный скиллбокс, который обещает из кого угодно сделать питониста за 3 месяца.

Раньше я безусловно топил за hard way — типа нафига учить питон, если не понимаешь как устроен компилятор и зачем нужен ассебмлер? Как в школе — не будут же дети писать сочинение, пока не пройдут алфавит, не научатся писать чёрточки, затем буквы, затем слова и предложения.

Когда я познакомился с Марьяной, понял, что такой метод обучения годится только для детей — взрослые люди устроены совсем по-другому. У них есть работа, куча дел и привычка оценивать промежуточные результаты. Если взрослому преподавать питон начиная с ассемблера — он сбежит минут через 10.

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

Сейчас я по прежнему считаю, что учиться надо через hard way, используя быстрые результаты так, чтобы взрослый не сбежал. Даёшь ученикам неделю теории — дай возможность за пару часов на ней что-нибудь собрать. Полтора часа играешь гаммы на гитаре— потрать 10 минут и сыграй что-нибудь кайфовое для себя.
6.6K views07:45
Открыть/Комментировать
2023-06-27 10:17:00 Летний набор на Асинхронную Архитектуру

У коллег в образовании июль и август считаются «мёртвыми» месяцами — в это время у всех мало продаж. Предполагаю, что это из-за традиционного сезона отпусков. У нас как всегда всё не так, как у других, и летом мы работаем точно так же, как и весь остальной год. Основная причина — мы довольно редко повторяемся. У нас нет 15 «запусков» одного и того же материала в год — мы любим делать новое, а не вечно ездить на старом.

Сейчас мы объявляем летний набор на «Асинхронную архитектуру». Это — самый долгоживующий наш курс: запускаем набор уже в пятый раз. Обучение стартует 28 июля — будет легче взять отпуск для обучения. Курс полезен всем, кто имеет дело с продакшен-проектами, в которых больше одного репозитория. Даже если вы джун, который пилит монолит в маленьком стартапе, курс вам поможет: мышление проектировщика позволяет писать более понятный и изолированный код.

Обратите внимание — теперь у нас два курса о проектировании систем. Курс, на который мы открыли набор, посвящён проектированию распределённых систем, а недавно запущенный «Анализ систем» — более общий: он про стратегически анализ бизнеса и работу с требованиями. Говоря грубо — на «Асинхронной архитектуре» мы строим систему на event-driven архитетктуре, а на «Анализе систем» — учимся выбирать между 7 разными архитектурными стилями. Если не знаете с чего начать или хотите просто познакомиться с распределёнными системами — идите на «Архитектуру». Если ищете фундаментальных знаний по проектированию ПО — записывайтесь в список ожидания следующего потока «Анализа», надеемся он будет в этом году.

Обучение стартует 28 июля. До 1 июля действует цена для ранних пташек. Потоков в этому году больше не будет.

Смотреть программу и отызывы →
8.0K views07:17
Открыть/Комментировать
2023-06-21 10:45:58 10 лет назад я прочитал в книге Олега Тинькова, как он объяснял сыну, что нужно стремиться не меньше тратить, а больше зарабатывать. Разумеется, я не поверил и решил, что это какая-то причуда богатых людей из розового мира — зачем тратить деньги, если можно их экономить!

Лет через 5 я дошёл до этого принципа сам, а ещё через 3 года смог даже что-то реализовать. Объяснить этот принцип нормально нормально не могу до сих пор, но недавно нашёл эмоциональный пример.

Наткнулся на историю чувака, который купил себе древнюю БМВ, чтобы ездить по работе. За время владения вложил в неё 2.4 миллиона рублей и неподдающееся учёту количество времени. Работа у чувака, насколько я понял, — не хитрая: развозить запчасти для этих самых БМВ.

Так вот — что было бы, если бы чувак купил себе вместо БМВ жигули-четвёрку, взял оставшиеся от покупки деньги, добавил бы те же 2.5 миллиона, и за пару лет открыл бы собственный такой же бизнес по доставке запчастей? Сейчас бы ездил на такой же БМВ, только новой. А свободное время тратил бы на развитие бизнеса, семью, или на оживление какой-нибудь ещё более древней БМВ в качестве хобби.

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

В который раз убеждаюсь, что самые ценные ресурсы — это время и внимание, и никак не деньги.
12.9K viewsedited  07:45
Открыть/Комментировать
2023-06-15 10:45:30 Преждевременное старение

В айтишечке (думаю и везде) есть понятие дедов — это чуваки, которые знают и умеют ТАК МНОГО, что имеют право с высоты взирать на происходящее, будь то новый статически типизированный язык, очки виртуальной реальности или новый способ разработки мобильных приложений. Деды знают, что технологии развиваются по спирали и ни за что не сядут ни на один хайптрейн (разве что за 2х).

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

Самый главный грех деда — отсутствие любопытства. Первые деды, которых я встретил в карьере, не признавали веб-фреймворки и считали, что это никчёмная обёртка над веб-скриптами с роутером. Потом были деды, которые не видели смысла в react.js (всё ж можно самому написать), в блокчейне, в SaaS. Где-то по дороге потерялись деды, которые не верили в сенсорные интерфейсы.

Наверное все деды, которых я встретил, были очень умными людьми — если бы они не потеряли любопытство, запершись в своём домике, индустрия сейчас продвинулась бы гораздо дальше — кто-нибудь на пару лет раньше наконтрибутил бы в реакт хуки и нормальный рендер, кто-нибудь помог бы новому стартапу найти product-market fit, пока не кончились деньги инвесторов. Материальное положение у таких дедов было бы стабильнее — они не приросли бы к одному работодателю, который поддерживает их старые технологии.

Лично я хочу оставаться любопытным как можно дольше. В жизни это получается довольно легко — всё-таки предпринимательство заставляет постоянно учиться новому. А вот в технологиях получается хреново: непонятно как отличать здоровый скепсис от преждевременного старения. Правда ли нет смысла переходить на новую macos, или это я старпёрю? Правда ли async в питоне не нужен? Правда ли кубернетис — раздутое говно? Может зря я не ношу Apple Watch?

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

А вы беспокоитесь о преждевременном старении? Как предотвращаете?
15.9K viewsedited  07:45
Открыть/Комментировать
2023-06-13 18:05:37 В пятницу стартует обучение на третьем потоке «Вы приняты». Помимо конкретных и хардовых знаний о поиске работы (выбор\поиск компании, резюме, собеседования), фишка курса — поддержка: работу искать гораздо легче, когда сидишь в чатике с несколькими десятками…
12.2K viewsedited  15:05
Открыть/Комментировать
2023-06-13 10:45:37 В пятницу стартует обучение на третьем потоке «Вы приняты». Помимо конкретных и хардовых знаний о поиске работы (выбор\поиск компании, резюме, собеседования), фишка курса — поддержка: работу искать гораздо легче, когда сидишь в чатике с несколькими десятками таких же как ты разработчиков, которые прямо сейчас отправляют резюме и проходят собеседования. Кто-то наступает на грабли, делится в чате — другие потом их обходят.

Если сомневаетесь стоит ли вообще искать работу за рубежом — посмотрите первый урок: засомневаетесь ещё больше (правда).

Если не сомневаетесь, но не уверены стоит ли покупать курс — приходите сегодня в 18:00 MSK на стрим: с Димой ответим на вопросы о курсе и, если успеем, — о поиске работы. Ссылку скину сюда ближе к делу. Записи не будет.
11.5K viewsedited  07:45
Открыть/Комментировать
2023-06-12 10:45:28 Readme driven development

У разработчиков библиотек есть классный способ проектировать API — Readme driven development. Смысл в том, что стартовать нужно не с кода, а с документации, которую пользователи увидят на гитхабе — написать текст, из которого будет ясно для чего нужна библиотека, привести самые яркие примеры задач, которые она решает, написать про ограничения.

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

Readme driven development помогает, даже если вы скромно шлёпаете формы или лабаете CRUD-ы. Начиная сложную задачу — представьте, что вы её уже закончили и пишете коллегам, как пользоваться результатом вашей работы. Расскажите, где найти вашу новую форму и что туда вбить, чтобы увидеть самые интересные варианты поведения. Опишите, какие ошибки ваш CRUD выдаёт в каком случае, как можно в нём авторизоваться, чтобы проверить разные уровни доступа и т.д. В общем всё, что посчитаете важным для коллег.

Скорее всего на этапе описания повызелает куча вопросов, которые в обычном режиме вы бы спешно решали в момент написания кода. Если решить их сразу — это можно сделать спокойно и не торопясь, а значит ваша реализация будет лучше и полезнее для колег.
11.7K views07:45
Открыть/Комментировать
2023-06-07 10:45:34 Достоин ли я асинхронной коммуникации? Все хотят работать асинхронно — не быть постоянно на связи с коллегами, отвечать когда удобно, а не когда спросили, иметь большие промежутки времени на творческую работу. Но не все этого достойны. Вообще-то начать работать…
14.5K viewsedited  07:45
Открыть/Комментировать
2023-06-05 10:45:49 Данные нужны только фронту?

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

Недавно услышал новый аргумент в пользу schemaless — типа на проектах бывают данные, которые нужны только для фронта. Бекенду на них при этом пофиг — почему бы не засунуть их хотя бы в JSONB. Аргумент — плохой и вообще слишком программистский.

Если данные существуют — значит они нужны бизнесу. Вот представьте: вы делаете классифайд, у которого все параметры объявлений, кроме таксономии, хранятся в Elasticsearch. Для фронта хватает — поиск работает, дерево категорий строится, отдаётся все быстро, рендерится красиво. И тут вам прилетает задача — сделать выгрузку самых качественных объявлений в формате XML для какого-нибудь маркетплейса. Качественные объявления — это у которых чётко изображён предмет на фотке, у которых нет мата в описании, указан бренд, и ещё куча всего. Представьте, как весело будет перелопачивать все эти данные в момент выгрузки? Особенно, учитывая что Bosch можно обозвать Bosh, Boshc, Бош или Бошь?

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

Может для программистов NoSQL и выглядит красиво, но в реальной жизни всё для чего он годится — это специфичные read-модели в CQRS.
13.5K views07:45
Открыть/Комментировать
2023-05-30 10:45:48 Мы с Марьяной любим читать отзывы — обычно вместе с похвалой туда добавляют ещё важную обратную связь, которая помогает нам становиться лучше. Ещё больше я люблю наблюдать, как курсы меняют программистов в реальной жизни — в «Феде и Самате» все сотрудники бесплатно проходят наши курсы, и приносят наши же улучшения в ежедневную работу.

Довольно странные чувства я испытал, когда в прошлом году доступ к курсу «Вы приняты» попросил один из наших ведущих фронтендеров (привет, Миша!). Ну что я могу сказать — курс работает так же, как и остальные: Миша переехал в Германию и теперь работает в Джетбрейнсе.

В списке ожидания накопилось много запросов, так что мы запускаем третий поток. Если вы программист и ищете (или думаете искать) работу за рубежом — приходите, стартуем 16 июня. Главный эксперт курса — Дима Рожков, живет в Германии с 2014 года и сам прошел весь путь поиска работы за рубежом. Нанимает со всего мира, консультирует по переезду и собеседованиям.

Курс длится три недели. Первая посвящена поиску компании и оценке офера, вторая — линкедину, сопроводительным письмам и резюме, а третья — подготовке к собеседованиям. Для тех, кто купит курс до понедельника действует скидка 10% по промокоду AGRIMOTOR.

Если вы состоите в чатике сильных программистов — не забудьте применить свою скидку — она побольше. И если читаете рассылку — тоже подождите, мы скоро пришлем отдельное предложение.
15.0K viewsedited  07:45
Открыть/Комментировать