Страница телеграм канала Экстраполяция IT

itextrapolation logo

Экстраполяция IT

3459 подписчиков

Канал об IT в целом и о программировании в частности. Для обратной связи пишите @aratak Платной рекламы на канале нет, взаимных пиаров тоже, любителей объеденяться в репост-кланы в бан. фейсбук: fb.me/alexey.osipenko твиттер: twitter.com/alexeyosipenko


Входит в категории: Технологии
Экстраполяция IT
29.06.2020 11:06
Разработка софта сегодня кардинально отличается от разработки двадцатилетней давности по одной простой причине: интернет везде. И даже сам софт поменял концепцию, назовём современный софт «internet first». Казалось бы, ну теперь есть постоянный коннекшен и можно обновлять приложения сколько угодно часто. Ну ничего страшного и кардинального. Сократилась длина итераций разработки, быстрее получаем обратную связь, быстрее фиксим баги и делаем новые. Быстрее, выше, сильнее и ничего кардинально нового в разработке не произошло. Ведь так? А вот и произошло. Софт перестал быть товаром и стал услугой (сервисом) в подавляющем большинстве случаев. Этот переход был плавным и постепенным и выделить момент, когда было так, а стало сяк нельзя. Но разработчики в большинстве своём до сих пор пишут код так, как будто это товар, а не сервис. И вот что действительно отличает эти два подхода, так это то, что сервис меняется постоянно и, что самое ужасное, внезапно. Главная ценность сервисного подхода к написанию кода — готовность этого кода поменяться в самую неожиданную сторону.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
26.06.2020 21:06
На правах пятницы, обсудим очень хорошую новость последних дней. Одна извесная дизайн-студия сделала нейросеть, которая рисует логотипы. И, вместо того, чтобы налево и направо рассказывать об этой нейросети, как это делают почти все, ребята год держали тайну и продавали работы этой нейросети, как работы маститого дизайнера. К самим работам можно относиться как угодно, как и к самой студии, но надо признать, что стратегический ход просто потрясающий. Ни один заказчик даже предположить не мог, что его работа сгенерирована нейросетью. Смотря на работы со знанием того, что это сделала нейросеть, работы выглядят генерируемыми и какими-то нейросеточно топорными. А вот не зная этого факта работы выглядят концептуальными и замысловатыми и, простигосподи, нонконформистскими. Самое интересное для нас, читающих «Экстраполяцию» тут то, что искусственный интеллект действительно потихоньку, маленькими шажками наступают на профессии и оттесняют природный интеллект. И это хорошая новость, потому как порог вхождения в умственные профессии будет повышаться, ведь конкурировать нужно будет не только с другими ленивыми кожаными мешками.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
25.06.2020 11:06
Что на самом деле работало бы в микросервисах, если бы менеджеры этим пользовались. В большом проекте на 20-30 репозиториев, если вы опытный разработчик, вы неоднократно должны были сталкиваться с тем, что вас менеджер старательно возит лицом по всей кодовой базе. В этом спринте вы тут, а в следующем вы уже где-то ещё, а на вашем месте другой несчастный, который, скорее всего, продолжает ваши задачи, некоторые из которых выписывали именно вы. Вы же старательно вникаете в код, в который уже вникали три месяца назад, но уже всё поменялось и в этом новом витке вы снова его читаете и пытаетесь загрузить в оперативную память до того состояния, чтобы вы могли что-то менять. А в следующий спринт вас потащат куда-то ещё. Таким образом менеджер реализует принцип коллективного владения кодом и пытается защититься от фактора автобуса. Фактор автобуса - это мера сосредоточения информации среди отдельных членов проекта; фактор означает количество участников проекта, после потери которых (в оригинале — «попадания» которых под автобус или грузовик, варианты: увольнения, заболевания, рождения у них ребёнка, наступления несчастного случая и других форс-мажорных обстоятельств) проект не сможет быть завершён оставшимися участниками. И вот штука в том, что при этом теряется одна из действительно работающих фич микросервисов: команды прикрепляются к своим проектам. Знают их и любят. Вместо этого, приходится чувствовать себя креветкой, прыгающей по проектам и ничего нигде толком не понимающей. Только отвлёкся от какой-то области — там уже всё переделали, изучай всё заново. Конечно, начальство не хочет иметь незаменимых людей. Но в плане фактора автобуса иметь толпу ни в чем не разбирающихся креветок мало чем отличается от толпы персонально специализированных парней. При удалении любого парня из первой толпы общий уровень экспертизы не уменьшается лишь потому, что он и так равен нулю. Все дружно собирают дзен-паззлы, чтобы как-то закрыть задачу и двинуться дальше. #dimoneverything
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
22.06.2020 16:06
Самое сложное в процессе программирования — переключение контекстов. И нет ничего хуже, чем думать одновременно о нескольких задачах сразу. С другой стороны, у нас есть баги, рабочий продакшен, обсуждение будущих фич, регулярные митапы и беклог нереализованных в возможностей. И за всем этим нужно следить и переключать контексты. Конечно, можно избегать переключения контекстов на регулярных митапах, если перестать вникать в рассказы коллег и их проблемы. Ещё можно не переключаться со своей задачи, когда нужно разбирать беклог. А баги можно фиксить с закрытыми глазами просто расставляя if или try-catch операторы у тех местах, где падает. Тогда, наконец, освобожденные мозговые ресурсы пойдут на текущую задачу. Производительность разработчика радикально падает, когда переключений контекстов будет больше индивидуального лимита, а кто-то в состянии переключаться пару раз в день, кто-то переключаться вообще не может. Если на работе уверены, что вам нельзя переключаться вообще, а вы в состоянии это делать, то у вас появляется пэт-проект или фриланс-подработка. Если разработчик переключается чаще, чем следовало бы, он начинает выгорать и скоро уволится. В работе одно из самых важных метрик – найти то количество переключений контекстов, которое в состоянии осилить и не выходить за эти рамки. И да, сеньорность и джуновость отдельно взятого разработчика с этим вообще никак не связана. Как кто с этим живёт и справляется? Прошу в чат для обсуждения.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
11.06.2020 13:06
Ух, давно ничего не писал. Не подумайте, что нечего писать, периодически что-то как начну писать, но мысль выходит слишком недоформулированной или безопеляционной. Вроде «прежде чем программировать, выясните зачем у вас это вот просят». Гениальная мысль, я знаю. А вот сформулировать мысль получилось о современных микрофонах и удаленном общении. Качество звука в онлайн-разговорах может зависеть от множества факторов, вроде пропускного канала интернета или шума вокруг. И если с шумом вокруг можно что-то сделать, а качество интернет-соединения более-менее приемлимое уже везде, то вот остальные факторы просто игнорируются большинством. 1. Микрофон. Хватит разговаривать в тапок, купите уже наконец нормальный микрофон. Купленная за десять долларов гарнитура вот уж никак не обеспечит приятное звучание вашего голоса для собеедника. Она будет фонить, рипеть чихать и трещать, а вот вам будет казаться, что все отлично. 2. Блютуз. Беспроводные наушники — это безусловно хорошо, особенно модные эйпродсы или любые другие аналоги. В некоторых случаях операционная система понижает битрейт передачи данных и звук становится такой, как будто разговариваешь по мобиле в девяностых. Экспериментируйте и гуглите чтобы решить эту проблему. 3. Вебкамера. Посмотрите внимательно что находится за вами — там не должно быть ничего провокационного и черезчур домашнего. Никаких сушилок для белья или семейных портретов. Откорректируйте угол обзора вебкамеры и расстояние до неё — никому не интересно смотреть на часть вашего лба и бровей в пол экрана. 4. Внешний вид. Про одежду и прическу банальности говорить не буду, но вот во время разговора ничего не жуйте и не пейте. В половине случаев будут слышны ваши чавкания, а во второй половине случаев собеседник будет недоумевать почему вы делаете такие странные паузы посреди предложения. В качестве проверки, возьмите и запишите свой голос в аудиодорожку и послушайте как это звучит. Прям вообще в качестве энд-ту-энд тестирования попросите своего коллегу записать ваш разговор и послушайте это аудио. Уверен, большинство удивится насколько дерьмово его слышно и видно на том конце провода. И вместо послесловия добавлю: помните, что качество звука и картинки для собеседника будет играть весьма внушительную роль в составлении общего впечатления от разговора. Если надо кого-то в чём-то убедить, используйте для этого всё, что вам доступно.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
19.05.2020 17:05
Ребята, кому эликсира? Наш хорошо знакомый эликсирклуб организует встречу с Андреа Леопарди, который один из разработчиков языка первого круга. Рассказывать будет про OTP и уверен, даже те, кто пишут на эликсире, узнают что-то новое обязательно. Детали по ссылке, нам традиционная десятинная скидка по коду extrapolation https://www.facebook.com/events/293583834971044/?active_tab=discussion
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
20.04.2020 11:04
Ребята, мы таки настроили работу с гит сабмодулями в нашей сервисной архитектуре, наступили на кучу граблей и сделали пачку костылей. Год назад в «Экстраполяции» я описывал причины почему этого захотелось и получил много справедливой критики в ответ. Где-то тогда и было решено попробовать эту систему в боевых условиях. Прошёл год и система работает довольно хорошо и стабильно с некоторыми нюансами: 1. Обновление сабмодуля в десяти сервисах — дело неблагодарное и рутинное. Мы сделали сиай-скрипт, который при релизе конкретного модуля делает по пулл реквесту в каждый репозиторий, где он сабмодуль. В итоге вручную обновлять сабмодули практически никогда не нужно. 2. Всячески избегаем саб-сабмодулей. Такие зависимости становятся логически сложными и неудобными в поддержке. И да, во всех случаях, когда в сабмодуле хочется ещё один сабмодуль — это всегда костыль и это легко решается правильно выбранной архитектурой. 3. Не все языки и фреймворки готовы к такому. Скажем, джаваскриптовый npm к такому не готов, а вот yarn имеет опцию workspaces, которая ведёт себя ровно так, как хочется. 4. Автотесты становятся просто необходимыми. Без них уж очень много ручной необходимой работы. 5. Публичными зависимостями и их версиями нужно управлять автоматически. У нас настроен бот renovate, который каждое утро делает пулл реквесты с обновлением всех зависимостей во всех репозиториях. Ещё в планах настроить правильный автомерж таких вот пулл реквестов, но пока приходится вручную. 6. Нужна жесткая фиксация версий внешних зависимостей. Никаких ">= 1.14", только "1.14.5". Так и обновлять легче и синхронизировать удобнее. 7. Изменения в сабмодули вносить стало очень удобно. Просто cd submodulename и уже там работаешь с сабмодулем непосредственно. А в родительском репозитории можно даже коммитить изменения дочернего, чтобы оно вместе работало. Потом с релизом дочернего всё станет, как должно быть. 8. Всего-то пару настроек в гите и работа с субмодулями становится такой же, как и без сабмодулей. Все твики и хуки легко можно нагуглить. В общем, всё, что можно автоматизировано, изменения делать удобно, лишней бюрократии нет. Сплошные плюсы.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
13.04.2020 11:04
Поразительно как точные науки научились систематизировать открытия. И принцип «научного метода» до одури простой: внимательно наблюдай и систематизируй. В Экстраполяции даже об этом было уже, но там было про css, а сейчас хочется вообще о программировании. Очень важно строить такие абстракции, которые соответствуют реальным процессам. Например, если в компании три отдела и данные между отделами передают строго по процедуре, то архитектура в три сервиса будет лучше монолита. Или если в приложении отдельная штука бывает законченной и незаконченной, то конечный автомат из двух состояний будет правильней поля логического типа. Если классифицировать все причины важности, то их по сути три: 1. Улучшения и изменения системы. Попросить поменять могут что угодно и когда угодно и нужно быть к этому готовым. Чем прямее код соответсвует реальным процессам, тем проще вносить изменения, которые могут попросить. 2. Красивый легаси. Задачи всегда ставятся по процессам, а не по коду и с прямыми абстракциями сильно легче разобраться в незнакомом участке кода. 3. Автотесты по процессам. Прямые абстракции проще всего тестировать, ведь логику тестов и все нюансы скорее всего записаны в описании к задаче. Собственно, часть работы программиста и состоит в том, чтобы правильно распознавать такие абстракции и предупреждать неправильное использование подходов и паттернов.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
25.03.2020 12:03
В этот раз, в Лямбдашоу в гостях был Влад Пранскевичус, основатель letsenhance.io и он рассказал о сложностях планирования проектов с машинным обучением. А это, черт побери, не сайтики рисовать. Смотрите сами:

Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
24.03.2020 17:03
Есть идея организовать прямую трансляцию и поговорить о том, что поменялось в процессах в разработке с вынужденной удалённой работой. Будет несколько гостей, с которыми, собственно, и будем это обсуждать. Ориентируемся пока на пятницу, но это не точно. Как вам идея?
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
20.03.2020 12:03
Очередной раз обсуждали тему контроля удаленных сотрудников. Для тех, кто обычно работает в офисах и сейчас находится на вынужденной удаленке и все процессы настроены под личный контакт, это прям больно должно быть. Мы же, как будто всегда готовились к пандемиям и работу свою настроили так, что принципиально не важно как и где находится коллега. К слову, об этом мы говорили с Евгением Выборовым (техдиректором из YayPay) в последнем выпуске лямбдашоу. Не буду повторяться и пересказывать видео, лучше посмотрите. А тут я хотел рассказать о том, что важным пунктом в настройке удаленной работы в команде является доверие к сотрудникам. Абсолютно плевать есть ли следящая программа с пробегом мыши, есть ли красная кнопка на стуле и как быстро отвечает собеседник в чате. Если проверяющий не доверяет сотруднику, работать не будет ничего. Опять же, в сложных иерархиях структуры компании все сильно усложняется. Твой тимлид вполне может доверять тебе, но вот у его начальника может не быть доверия к тимлиду и пробег мыши будут менять у обычного разработчика. В общем, если нет доверия к сотруднику, лучше распрощаться и найти кого-то с доверием, а не вводить деспотизм, как форму правления в команде. И наоборот, если вас заставляют ставить следящие программы на компьютер, значит вам не доверяют. И что делать с этой информацией — решать вам.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
17.03.2020 13:03
Ребята, так как сейчас все работают из дому, проблема окружающих шумов во время аудиоразговоров стала острее всех других. Когда-то, во времена бета-версии, я пользовался программой krisp.ai, которая убирает фоновые шумы и делает это достаточно качественно. В общем, пять баксов в месяц, чтобы ваши собеседники не слышали плач ребёнка и перфоратор соседа того стоят, уверен.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
11.03.2020 11:03
Итак, первое видео нового сезона будет из рубрики «Lambda Short Stories» и в нем Павел Суйков коротко расскажет о том, что же такое Лямбда-куб. А если поделитесь этим видео в чатиках с коллегами, то тогда таких видео станет больше.

Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
09.03.2020 12:03
Ребята, затишье в «Экстраполяции» было не зря, я считаю. Мы тут второй сезон «Лямбдашоу» запилили. Анонс и самореклама вот прям вот тут:

Лайки, сабскрайбы и вот это вот всё.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме


Экстраполяция IT
07.03.2020 12:03
Учим современную бизнес-лексику. Если кому-то говоришь «пшел вон» и не уточняешь куда конкретно, то ты ментор. А если уточняешь куда ему конкретно идти — ты коуч. А если при этом объясняешь как быстро и что будет, если он не пойдет — ты тьютор.
Читать

Обращаем внимание, что мы не несем ответственности за содержимое(content) того или иного канала размещенный на нашем сайте так как не мы являемся авторами этой информации и на сайте она размещается в автоматическом режиме