Эта статья – о Pet project, собственных проектах, которыми многие из нас занимаются в свободное время. Поговорим о том, нужны ли такие увлечения архитектору и как Pet project может помочь в работе. Также я расскажу о своих проектах и опыте, который я с их помощью получил. Добро пожаловать под кат!
Новости
Ядро Linux 5.17 выходит уже на этой неделе — чего ждать
Релиз планировали на неделю раньше, но он появился только на днях. Расскажем, почему произошла задержка и поговорим о заметных нововведениях.
Scala: Гексагональная архитектура и DDD на Free Monad в функциональном программировании
Привет Хабр! Пятничного тру ФП хардкора с Free Monad, Таглес Финал, Монад трансформерами, Refined Types, Smart Constructors и прочим таким вам в ленту. Хардкор сам себя в ленту не принесет так что погнали.
Гексагональная архитектура делит наш код на три основные части.
1) Primary Adapters,
2) Secondary Adapter
3) Logic aka Domain.
Пять проблем неидеального тимлида (и семь спасительных решений). Как тимлиду не пострадать от стокгольмского синдрома
Позиция тимлида — желанное место для многих разработчиков в пути их профессионального становления, но так ли радужна эта работа? Большая часть задач скрыта от других участников команды, потому мнение о тимлидах и их роли бывает искажено.
Обсудили волнующую многих тему на нашем митапе с Захаром Овчаровым (Respona front-end team-lead, Toptal senior front-end developer). Встреча прошла перед конференцией IT-People Conf в Казани и вызвала интересную дискуссию. Полная версия обсуждений в нашем видео.
Дисклеймер от Захара: все персонажи выдуманы, все действия нереальны, автор не несет никакой ответственности за ваши действия, поэтому действуйте на свой страх и риск;)
Внезапно для себя вместо фронтенд-разработчика я стал тимлидом. Казалось бы, ничего страшного. Но как результат — огромная куча проблем.
Я всегда считал себя уравновешенным и мотивированным человеком. Думал, что в моей жизни всё прекрасно, у меня нет проблем со здоровьем и психикой. Но однажды я понял, что не так уж все хорошо: что-то мне спать не хочется, нет аппетита и настроения. Я решил обратиться к главному источнику информации — гуглу. Это было не лучшее решение. Я выяснил, что мёртв.
Оказалось, что у меня большой список недугов: начиная обсессивно-компульсивным расстройством с депрессией, заканчивая биполярностью с паническим расстройством. Я решил искать корень проблемы и разбираться, почему же это произошло. Я жил тогда на Кипре, за окном светило солнце, шумело море, была работа над интересным проектом. Кажется, что всё должно быть замечательно. Но что-то в голове не давало мне покоя.
Устройство отслеживания замены картриджей в фильтре питьевой воды на STM32
Привет, меня зовут Евгений Кузнецов, я много лет работаю в сфере автоматизации предприятий. В качестве хобби занимаюсь поделками в сфере электроники для «малой автоматизации» дома.
Сегодня хочу описать одно из устройств такой автоматизации – счетчик литража для фильтра питьевой воды.
Футбольный симулятор в 30 строк кода
Привет, я увлекаюсь программированием шейдеров. Сегодня это мини-футбол, которым я хочу поделиться.
Погружаемся в Compose-Verse — руководство по Jetpack Compose для начинающих: управление состоянием
Какое бы Android-приложение мы ни собирались создать, нам в любом случае нужно будет управлять состоянием, поэтому понимание того, как лучше всего это делать, является очень важным. К счастью, существует Jetpack Compose, который предлагает нам простые и интуитивно понятные способы управления состоянием наших приложений.
Зачем вам может понадобиться собственный DNS-сервер?
Одна из сложностей в понимании DNS заключается в его децентрализованности. Существуют тысячи (а может, сотни тысяч?) авторитетных серверов имён и по крайней мере 10 миллионов резолверов. На них работает множество разного ПО! Из-за того, что на разных серверах выполняется своё ПО, в работе DNS присутствует большая несогласованность, что может вызывать кучу раздражающих проблем.
Но вместо того, чтобы обсуждать проблемы, я хочу разобраться, почему децентрализация DNS — это хорошо?
Телеграм как инструмент для оценки стоимости предметов
Телеграм снова стал очень популярен. Наше дело маленькое - получить от этого мессенджера максимум личной выгоды с учетом фактора времени. Я не буду уделять большого внимания библиотекам или деталям реализации, а предложу только общую концепцию довольно комплексной системы, которая кому-то может оказаться полезной.
Раньше я уже писал про использование телеграм бота для мониторинга состояния своих ресурсов, сейчас я бы хотел уделить особое внимание механике внедрения UI телеграм бота в процессе оценки предметов. Так как проект ориентирован на предметы старины, которые несут историческую информационную нагрузку, оценивать мы будем именно их.
Пример работы этого бота можно увидеть здесь.
Как устроены файлы? Разбор
Но можем ли мы заглянуть внутрь каждого файла и понять как он устроен? Конечно можем, поэтому сегодня мы немного покопаемся в бинарном коде и пощупаем метаданные.
Заодно узнаем, почему iPhone зависает от SMS и распотрошим PowerPoint.
Как собрать Docker-контейнеры с помощью Ansible
Docker — это система контейнеризации, собирающая независимые части ОС без установки библиотек в основную систему. В отличие от виртуалок, которые собираются долго, такие контейнеры собираются и запускаются достаточно быстро. Это позволило Docker и Kubernetes стать одним из главных средств автоматизации и деплоя.
Voximplant Avatar: голосовой и чат-робот с искусственным интеллектом для вас
Голосовые и чат-роботы прочно вошли в нашу жизнь и уже никого не удивляют. Мы общаемся с ними каждый день, они записывают нас на приём к врачу, сообщают время доставки заказов, а также рекламируют всё на свете.
Но главный минус этих роботов — они говорят и воспринимают только заранее заданные фразы и ничего больше. Очень часто этого бывает недостаточно, поэтому мы пытаемся поскорее переключиться на человека.
Ситуацию поможет исправить искусственный интеллект. Эта сфера далеко продвинулась в последнее время и продолжает развиваться с высокой скоростью. Уже существует множество так называемых AI-компаньонов, с которыми можно общаться, как с живыми людьми, практически не замечая разницы. Такие роботы обучаются в процессе общения, понимают различные фразы и стараются отвечать по-разному даже на один и тот же вопрос.
А что если объединить такого AI-компаньона и голосового робота? На выходе можно получить голосового помощника, с которым можно вести естественный диалог, как с реальным человеком. А если обучить этого помощника всему, что он должен знать, добавить сверху реалистичный синтез речи, неотличимый от настоящего голоса, на выходе получаем аватара от компании Voximplant.
Как мы делали оптимизатор, который сократил планирование графика порезки металла с 5 часов до 5 минут
Привет! На связи Анна Данилова и Михаил Телков из центра компетенций Quintiq в «Северстали». Мы тут сделали один классный оптимизатор для производства и хотим о нем рассказать. Немного фактов: активная фаза проекта заняла 26 недель; на стадии разработки реализовано 137 задач; пока тестировали оптимизатор, выявили и решили 86 инцидентов, а за первый месяц эксплуатации — ни одного тикета на изменение; сделали так, что фактические затраты на проект оказались в 4 раза меньше первоначальной оценки; консультантами были европейские коллеги, поэтому иногда задачу осложняли языковые трудности. Но все работает.
Кризис в стоматологии: готовьтесь чистить зубы 3 раза в день
Отечественных расходников, оборудования и комплектующих у нас меньше 2%. Сама модель клиники на краю прикладной науки в том, что у нас есть лучшие игрушки со всего мира. С момента начала событий прошло около трёх недель. Мы ещё не до конца поняли, что случилось в целом и какие будут дальше последствия, но цены на всё уже выросли.
В отличие от других отраслей у нас не прекратились никакие поставки. Точнее, например, есть несколько американских поставщиков фармы. Двое отказались, а третий и четвёртый решили расширить доли, потому что рынок России большой. Почему они остались? Официально, потому что биоэтика предполагает, что от медикаментов страну отрезать нельзя даже санкциями, а реально, потому что это сулит им сверхприбыли.
Отвалился один из американских поставщиков комплектующих для оборудования. На связь вышли китайцы, на чьей фабрике он производился, и сказали, что они давно уже выпускают всё то же самое, но с другими наклейками на корпусе. Даже пресс-формы корпусов те же самые. Понятно, что с поддержкой и гарантией там чуть хуже, но ничего никуда не потерялось.
Пациенты, соответственно, как и при любом кризисе, хотят закрыть максимум вопросов здоровья как можно быстрее. Мы даём возможность зафиксировать цену плана лечения (он иногда бывает на 24 месяца) при условии предоплаты расходников, чтобы закупить их сейчас. Просто поднять цены, как всем нам кажется, не совсем этично.
Русских врачей поливают помоями в международном сообществе.
Пациенты плачут на приёмах.
Многие вещи подорожали. Когда я увидел новый прайс на зубные щётки с повышением на 70%, то сначала не поверил своим глазам, перезвонил спросить. Да, это правда.
Всё вокруг напоминает старый добрый 2014-й год, когда доллар вместо 30 рублей вдруг стал 90. Но паники больше.
Разработчик в стране Serverless: первые шаги, первая лямбда (Часть 1)
Serverless подход в разработке уже давно пользуется большой популярностью. По разным опросам, разработчики отмечают следующие преимущества в serverless технологиях: гибкое масштабирование, быстрота разработки, уменьшение времени или затрат на администрирование приложений, быстрые релизы.
Преимущества выглядят заманчивыми и многообещающими. Так ли все это? Пришло время познакомиться с serverless технологиями. Буду разбираться с новым подходом через призму опыта создания “классических” приложений. Это значит, что обязательно должны быть тесты, возможность запускать локально, возможность дебажить, несколько окружений, логи, метрики и т.д. Нет смысла знакомиться на уровне hello world приложений, которые красиво выглядят на экране. Я возьму задачу с похожими на реальность сценариями. Конечно, в сети очень много разных статей и инструкций, но нет таких, после которых ты сможешь сделать как надо, подумав обо всех проблемах заранее, а не после релиза. Поехали.
Репликация с нуля за 5 простых шагов (невозможна)
Если вы давно хотели углубиться в эту тему и разобраться в устройстве репликации на живом примере, то эта статья для вас.
Софт для малого бизнеса: что может пойти не так?
Малый и средний бизнес тяжело решается на внедрение корпоративного программного обеспечения, но именно он быстрее всех ощущает эффект: в таких компаниях проще сделать удачное внедрение, обучить сотрудников и быстро выйти на рост продуктивности (или не выйти и отказаться). Однако всегда что-то может пойти не так — в любой внешней и внутренней ситуации, по не зависящим от самой компании причинам. И пока большие корпорации переживательно, но уверенно ищут многомиллионные альтернативы многомиллионным решениям, маленькие компании борются с трудностями, которые ежедневно уносят деньги. Это может случиться в любой день, и лучше знать, какие потенциальные проблемы ждут небольшие компании.
Как мы чуть не поседели 3 раза до того, как это стало мейнстримом: кризисы декабря и января
Я обещал рассказать, что у нас случилось в ЦОДе и хотел дописать всё это к концу февраля. Дальше стало немного не до того, но всё же, раз обещал, рассказываю. Ха, тогда эти проблемы казались нам невероятно огромными.
Сначала в декабре мы потеряли один луч городского питания на ЦОД, а потом почти сразу — второй. И не только мы, поэтому с дизелями отрабатывали впритык. Потом у банка ККБ отозвали лицензию, из-за чего прилегло примерно 10% российской электронной коммерции, потому что кроме Вебмани он обеспечивал очень крупные платёжные шлюзы. И, наконец, у нас был брутфорс на RDP эпических масштабов.
В промежутке между этими историями я ещё неприятно болел, поэтому не мог рассказать сразу. Теперь немного отдышался и могу обстоятельно рассказать про приключения нашего ИТ-бизнеса в России дальше. Они, скажем так, очень расширили мои представления о рисках бизнеса.
Первая кризисная ситуация началась 18 декабря прошлого года достаточно заурядно: несколько серверов взяли и перезапустились. Когда мы начали разбираться, что же случилось, выяснилось, что сгорел «их» ИБП. Почему сгорел ИБП? Потому что был скачок напряжения на подстанции, подающей городское питание. Дальше у нас вообще пропал этот самый ввод, автоматика отработала штатно и перекинула нас на второй луч. Мы сразу же сделали тестовый пуск дизелей. Всё на первый взгляд выглядело довольно рутинно.