Социальные сети Рунета
Четверг, 2 мая 2024

Мониторинг на Python: как сохранить метрики в мультипроцессном режиме Привет, Хабр! Меня зовут Никита, я backend-разработчик команды клиентских сервисов. В Selectel мы строим и поддерживаем IT-инфраструктуру для компаний, которые развивают свои цифровые продукты. В нашем департаменте около 20 приложений, большая часть из которых работает на F...

Библиотека контролов для Avalonia UI Последний год наша команда работала над кроссплатформенной версией САПР Delta Design. В результате этой работы была создана своя библиотека UI контролов для Avalonia, которая поддерживает как ОС Windows, так и ряд систем Linux, включая российские АстраЛинукс, РедОс, а также ...

Истории из жизни вредоносов: прячемся в автозагрузку ОС Windows Основной задачей, которую необходимо решить вредоносному файлу сразу после запуска является закрепление в системе, то есть обеспечение возможно постоянной работы данного процесса в системе. То есть, злоумышленнику необходимо, чтобы процесс, с помощью которого он может получи...

Малоизвестные и интересные особенности C и C++ В C и C++ есть особенности, о которых вас вряд ли спросят на собеседовании (вернее, не спросили бы до этого момента). Почему не спросят? Потому что такие аспекты имеют мало практического значения в повседневной работе или попросту малоизвестны.Целью статьи является не освеще...

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

Как физик-ядерщик делает алюминиевые палки и продает на 20 млн ₽ в год В статье расскажу, как я накопил больше 10 млн на собственный карбоновый цех, как организовать литье алюминия в домашних условиях и выжить после взрыва, как нанимать сотрудников по морально-волевым, и что нужно сделать, чтобы алюминиевая палка начала стоить в 14 раз дороже. ...

Как организовать облачную DR-площадку для крупного бизнеса На стабильную работу ИТ-инфраструктуры компании в локальном дата-центре влияет много факторов: резервирование по схеме N+1, работа инженерных систем, экспертиза технических специалистов. Однако есть и внешние. К ним относится отказ оборудования, природные катаклизмы и геопол...

Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии В этой статье показано, как приготовить систему «холодных» конфигов для большого Android-приложения, построенного на многомодульной архитектуре. Под «холодными» конфигами здесь подразумеваются настройки приложения, которые нужно делать локально на девайсе без необходимости з...

Каталог данных — почему без него непросто и как всё организовать с максимальной пользой В этом посте мы расскажем, как организовали каталог данных в МКБ в текущих условиях — когда многие вендоры ушли, и по-настоящему рабочих вариантов осталось два: или пилить что-то самим с нуля, или обратиться к опенсорсным решениям. Пилить самим — тут как всегда, это и дорог...

Как сэкономить время, силы и деньги компании с помощью дерева метрик Привет, Хабр! Меня зовут Калаш, и я больше 11 лет в IT. Запустил несколько интернет-магазинов, мобильное приложение, программу лояльности с нуля. Консультирую и менторю начинающих продактов. Проверил более 2300 проектных работ студентов курса для продакт-менеджеров в Яндекс ...

Android Lint: оптимизируем проверку мердж-реквестов Привет, это Android-разработчик из «МТС Диджитал» Никита Пятаков. Когда я только начал работать над приложением «Мой МТС», мне нужно было время, чтобы адаптироваться и ознакомиться с проектом. На первых МР-ах коллеги подсвечивали готовые решения, которые можно переиспол...

Как не про…пустить все дедлайны. Таск-трекер в деле Какие подходы к управлению временем вы сейчас используете? Готовы ли вы сказать, что у вас чёткая система по управлению вашими рабочими задачами?Я готов сказать — да, и поделиться как это работает у меня вот уже много лет. Читать далее

Какие альтернативы есть у Hyperloop One? Разбираемся В предыдущей статье мы подробно рассказали про историю проекта Hyperloop One, приказавшего долго жить. Но он был не единственным подобным начинанием. Возможно, мы все-таки получим работающий гиперлуп уже в этом десятилетии.  Читать далее

Всё ещё в поисках алгоритмического дзена Не так давно прочитал статью "В поисках алгоритмического дзена", где автор обсуждает подходы к использованию алгоритмов в рабочих задачах. В статье подчеркивается, что даже наивная реализация конкретного алгоритма будет быстрее готовых средств/реализаций, существующих в плат...

Делаем из Black Box мониторинга внешнее observability Есть мнение, что Black Box подход к мониторингу хуже, чем White Box. Мол, мы получаем от него мало информации. Данных действительно немного, но мы можем развить нашу систему Black Box мониторинга и добиться довольно информативной системы контроля, которую мы условно назвали ...

Как государство дало мне 4 млн на бизнес в деревне, и теперь я работаю по 16 часов без выходных ДИСКЛЕЙМЕР: Статья написана автором блога на основе интервью с предпринимателем, владельцем торговой марки сыра и козьей фермы из мордовской деревни Мариной Перфильевой. 7 лет назад я бросила работу в городе и с мужем переехала в деревню, завела 50 коз, взяла агростартап на...

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

Система водяных «тёплых полов» в квартире и частном доме. Что нужно знать, чтобы не пожалеть о содеянном? «Тёплые полы» в квартирах- это модная тема в ремонте ещё с 1990-х.Сейчас тема сильно развилась, так как резко увеличилось количество специалистов, желающих такие полы построить из современных материалов.Многие владельцы квартир хотят устроить тёплые полы с подключением к общ...

Микросотовые IP-DECT-системы Yealink: сбор требований и проведение радиопланирования Вторая статья посвящена особенностям работы с микросотовой системой Yealink на этапе ее внедрения.Внедрение — важнейший этап построения стабильно работающей высоконагруженной микросотовой DECT-системы. В этой статье рассмотрим следующие вопросы:• что такое радиопланиров...

Как стоит и как не стоит использовать HttpClient в .NET Всем привет! Меня зовут Андрей Федотов, я бэкенд-разработчик в одной из команд платформы интернета вещей ZIIoT Oil&Gas. В этой статье я рассказываю, что нужно знать и как работать с HttpClient в .NET, чтобы не получить трудноподдерживаемый и сложный код и не нарваться на...

Ленивые бесконечные списки на основе Deferrable Views При создании удобных и отзывчивых интерфейсов часто возникает ситуация, когда нужно иметь дело с большими коллекциями элементов. Один из способов организации списков – бесконечный просмотр, но данный способ скрывает в себе ряд технических сложностей.В статье рассмотрим, ка...

Проектирование fault-tolerant систем на Go Привет, Хабр!Fault-tolerant системы — это те, которые способны продолжать функционировать даже в условиях частичных сбоев или неисправностей. Основная фича таких систем заключается в том, чтобы обеспечить непрерывность работы приложения даже при возникновении ошибок или непр...

Автоматизируем сборку и деплой приложения в GitLab CI/CD: подробное руководство с примерами При разработке приложений рано или поздно наступает момент, когда заниматься развёртыванием вручную становится затратно и неудобно. Как следствие на помощь приходит автоматизация этого процесса с помощью специально настроенных пайплайнов непрерывной интеграции и непрерывной ...

Вы за это заплатите! Цена Чистой Архитектуры Всем привет, меня зовут Артемий, я работаю старшим Android-разработчиком в команде пользовательского профиля в RuStore. Мой опыт в индустрии уже 8 лет. За это время я успел поработать в разных проектах и компаниях. У меня был опыт работы в проекте, в котором было свыше 300 м...

Студенты на Хабре: ныть нельзя писать статьи Поставьте запятую в нужном местеХолодным-холодным декабрём и тёплым-тёплым маем без того неспокойная жизнь модераторов Хабра резко наращивает темп: в Песочнице появляются десятки студенческих публикаций. У нас уже выработалась целая система распознавания таких материалов, но...

Как настроить тестирование с Vanessa Automation и Gitlab с нуля Боитесь, что тесты пропадут, если компьютер сломается? Хотите видеть историю изменений? Вынуждены запускать тесты в отпуске, т.к. у других членов команды нет к ним доступа? Не можете одновременно работать над написанием и прогоном? Знакомы эти проблемы, хотите избавиться от ...

От конструктора до облака: какие есть способы разработки мобильных приложений Привет! На связи Вася Крючков, уже больше 7 лет я занимаюсь разработкой мобильных приложений и сейчас работаю в компании IMSHOP.IO, где за 5 лет разработали больше 150 приложений для ритейла. За эти годы часто встречал случаи, когда е-com менеджеры и технические директора сл...

API от А до Я (теория и практика) Я работаю с совершенно разными проектами и встречаюсь с разными технологиями: графы, пространственные данные, риалтайм обработка, ML и NER сервисы и т.п., но есть классические основы, которые должен знать каждый в ИТ от аналитиков до руководителей, так называемый фундамент б...

Основы Identity and Access Management (IAM) в архитектуре приложений Привет, Хабр!С каждым годом мы становимся свидетелями все большего количества сбоев в системах безопасности, утечек данных и хакерских атак даже на самые маленькие проекты.Identity and Access Management (IAM) выступает как наша первая линия обороны. Оно не просто защищает на...

Как приручить нейросеть: практический опыт Итак, в прошлой статье я уже немного рассказывал о том, что с LLM можно работать и даже построить определенный RAG. Как и обещал, перейдем к практике! :)Сегодня мы будем делать простейший локальный и приватный RAG для работы с базой знаний. Все это будет проходить без погруж...

ИБ и ИТ, давайте жить дружно. Вот как это возможно Безопасность во многих компаниях стоит особняком. Вместо того чтобы беспокоиться о качестве вашего продукта, безопасники твердят о ГОСТах и ISO, о разных сертификациях и авторизационных протоколах — вещах важных, но вне фокуса основного архитектора. При этом их деятельность ...

Как проверить локаторы с помощью Playwright В этой статье мы поговорим о том, что можно проверить у локатора (элемента) и какие вообще есть возможности проверок. Более того, в этой статье я описал упражнения, которые вы можете выполнить и отработать в качестве практики. Обычно мои статьи были холиварными, а не техниче...

Метрики команды разработки Заказчику задачи в конечном счёте всё равно, какой методологией управления разработкой пользуется команда исполнителей - точная дата получения результата для него важнее.Чтобы называть эту дату более обоснованно, необходимо понимать, как на самом деле работает команда: сколь...

[Перевод] Как и зачем компании развивать программу амбассадоров бренда В условиях жесткой конкуренции компании постоянно ищут способы выделиться из толпы. В последние годы популярной стала стратегия развития потенциала амбассадоров бренда компании среди ее сотрудников. Эти люди, увлеченные своей работой и преданные организации, могут сыграть ...

Как сделать Kubernetes еще круче: секреты безупречной работы Отказоустойчивость информационных систем необходима для обеспечения непрерывности работы системы и минимизации возможности потери данных в случае сбоев или отказов в работе оборудования. Это особенно важно для критических для бизнеса систем. Мы начали использовать геора...

Аналитика в игре на Godot: подключаем MyTracker Привет! Я Артем Ковардин, руководитель команды Push Service в RuStore. В этой статье я расскажу про подключение MyTracker в мобильную игру на Godot. Godot — замечательный движок для игр, но под него очень мало готовых плагинов. Особенно, плагинов для российских сервисов...

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

Зачем нужен проектный офис, если компания работает в продуктовом подходе? Привет! Это Оля Муттер, руководитель проектного офиса в СберМаркет Tech. Сегодня я хочу рассказать о проектном подходе в продуктовой разработке. Нужны ли проджекты, если в компании уже есть продакты? Как построить синергию между проектным офисом и продуктовой командой и каку...

Детектируем горизонтальное перемещение с WMIExec Привет, Хабр!Ранее мы рассказывали о возможных способах выявления горизонтального перемещения (Lateral Movement) с помощью таких инструментов, как PsExec, SMBExec и AtExec. Сегодня мы продолжим "работать" с данной техникой и рассмотрим еще один инструмент - WMIExec. В статье...

OpenAI GPTs: пошаговое руководство для создания с практическими примерами, ACTIONS и внешние API Я часто использую ChatGPT в повседневных задачах. Он реально помогает в обучении, разработке и решении небольших проблем, которые легко описать. Но с другой стороны бывает сложно дать ему нужный контекст, чтобы он начал делать то, что нужно вам, а не выдавал ложь за действит...

TMS на замену TestRail: писали для себя, а выложили в open source В прошлом году TestRail прекратил предоставлять и продлевать лицензии компаниям из России, поэтому мы в YADRO решили разработать собственную тест-менеджмент систему TestY. Опирались на опыт работы с другими сервисами, чтобы добавить тот функционал, которого не хватало нашим ...

Как правильно описывать и декомпозировать задачи в таск-трекере. Рекомендации и примеры В чем же особенность декомпозиции рабочих задач? Наша статья даст понимание, зачем нужна декомпозиция и как описывать задачи, а также поможет вам улучшить ваши процессы. Читать далее

Вам не нужен time management, вам нужен attention management Привет, меня зовут Ася Исакова, и я организационный психолог. Я уже 10 лет работаю с разными командами, и за это время видела сотни горящих, выгорающих и сгоревших на работе людей. В этой статье я расскажу, как управлять своим вниманием так, чтобы хватало сил на важные дела ...

Какие ML-платформы нужны бизнесу, и кто их может сделать Привет, Хабр! Меня зовут Виктор Кантор, я директор Big Data МТС. Около 14 лет я работаю с технологиями, связанными с Machine Learning, Big Data, Data Science. Но есть одна проблема, с которой я постоянно сталкиваюсь. Например, поставлена задача, которую нужно решить при помо...

Почему айтишники часто не справляются с ролью скрам-мастера? И как ментор может с этим помочь? Одно дело — внедрить гибкие практики в стартапе на пару команд разработки, совсем другое — в один из крупнейших банков. У нас в ВТБ более двух тысяч команд разработки. Это значит, что нам нужно две тысячи скрам-мастеров — новые практики сами себя до разработчиков не донесут....

Неинвазивный мониторинг ЦОД: повышаем надежность и снижаем затраты В центрах обработки данных используется оборудование от разных вендоров, с различными встроенными системами мониторинга. Когда таких систем становится много, уследить за подобным «зоопарком» непросто.Но как сделать систему мониторинга, которая будет работать в любом автозале...

Нужен ли продакт в ML-команде? Мнение изнутри Пять лет назад из обычного продакт-менеджмента я перешла в команду с дата-сайентистами. И весь процесс моей работы сильно изменился. Раньше после определения потребностей пользователя я приходила к команде разработки с готовой задачей и дизайн-макетами. А после разработ...

Неочевидные моменты TypeScript и способы их решения Разрабатывая на TypeScript, можно столкнуться с ситуациями, в которых код будет работать не так, как ожидается. В статье разберем несколько таких моментов. Часть просто придется иметь ввиду, часть решается обновлением, а часть исправляется – обо всем по порядку. Если вам бу...

«Серёга, диктуй код из смс»: как мы ускорили проверку гипотезы с помощью эксперимента Привет! Меня зовут Алина Бузинова, я менеджер продукта Отелло, сервиса бронирования отелей от 2ГИС.Ключевой принцип развития молодого продукта — скорость доставки полезных решений. Но не каждая фича — полезная, и не каждая полезная фича — дешёвая. Планировать шестимесячную р...

Нельзя писать безопасный код на C++ без санитайзеров С++ видится мне огромным франкенштейном: очень уж много разнообразных способов описать свои намерения. В добавок к этому язык пропагандирует политику zero-cost abstractions, из которой следует (помимо прочего), что программист в ответе за все св...

Расширяем тестовый фреймворк с помощью Pytest-плагинов. Часть 2: практика В первой части статьи мы разбирались с теорией, которую нужно знать для создания собственных Pytest-плагинов: фикстурами, маркерами и хуками. А теперь перейдем к практике. Я покажу два примера плагинов, которые помогают нам в интеграционном тестировании систем хранения ...

Машина свободы: как чилийские социалисты придумали компьютер для управления экономикой В 70-е годы в Чили задумали уникальный проект, который и сегодня кажется фантастическим — компьютер, который бы управлял экономикой всего государства. Систему удалось построить и успешно запустить — но ей было не суждено просуществовать долго из-за военного переворота. Однак...

Удаленка для банковских сотрудников: как сохранить данные в безопасности и перевести сотрудников в онлайн Во время пандемии в 2020 году весь мир столкнулся с необходимостью обеспечить своих сотрудников возможностью работать из дома, да и вообще из любой точки мира. Банковская сфера, как и другие секторы, работающие с чувствительными данными, столкнулись с трудностями адаптации с...

Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов Меня зовут Валя Борисов, и я — аналитик в команде Ozon. Задача нашей команды — создавать инструменты для мониторинга и анализа скорости. Наши усилия направлены на то, чтобы в реальном времени следить за тем, как быстро работают наши сервисы и платформа. Благодаря инстру...

Модель зрелости SOAR Михаил Пименов, аналитик Security VisionВ этой статье мы попробуем взглянуть на модель зрелости компаний, внедряющих системы информационной безопасности класса IRP/SOAR. Здесь также существует масса интерпретаций и способов систематизации. Я предлагаю взглянуть на модель зре...

Простой гайд для предпринимателей: купить готовое решение или уйти в собственную разработку? Вечный вопрос, который терзает предпринимателей: взять готовую ИТ платформу и на ней сделать продукт или разработать все самому? В этой статье подробно расскажу про каждый из путей. Читать далее

Лучшие практики RuStore: правила хорошего Code Review для Android Привет, я Михаил Емельянов, руководитель Android-направления в RuStore. Над стором трудится большая команда разработчиков, проект регулярно дорабатывается, а количество новых строк кода неизменно увеличивается. За год работы команда магазина приложений выпустила невероя...

Настройка алертингов из Opensearch в Telegram В «Магните» только по 1С-системам суточный объем логов переваливает за 100 Гб. Их нужно обрабатывать, использовать, выделять ценные данные. Конечно, мы пользуемся Discover и различными дашбордами и визуализациями. Но иногда необходима оперативность. Тогда пригождается систем...

5 стадий принятия необходимости изучения «плана запроса» или почему может долго выполняться запрос Всем привет! Меня зовут Виктор, я работаю в Компании БФТ-Холдинг руководителем группы разработки. В этой статье разберем подходы и рекомендации по выявлению и устранению проблем с производительностью в системе базы данных Greenplum. Материал будет особенно полезен начинающим...

Прозрачность процессов как инструмент эффективного взаимодействия Привет, Хабр! Меня зовут Анастасия, я из Газпромбанк.Тех. На текущий момент являюсь одним из HOP QA, но довольно долго была просто тестлидом. Поэтому много мыслей в этой статье использованы ещё с того периода времени.В этой статье, я хочу рассказать, что такое прозрачность п...

Как мы делали маркетплейс металлопроката и почему отказались от готового решения, часть 1 Представьте себе, что арматуру для строительства дома можно заказать так же просто, как и чайник домой. Идея для наших быстрых времён просто отличная! Да, такой формат продукции не доставить в пункт выдачи около дома, но ведь есть варианты. Например, в малых объёмах металл у...

«16+» или делаем шаблон страницы в XWiki на примере спецификации API Пусть вас не смущает надпись: «16+» в заголовке. В статье не будет ни слова о безудержном кутеже с куртизанками за игрой в блэк-джек.Просто я решил очередной статьей отпраздновать выпуск в свет 16-й версии XWiki – «open-source аналога Confluence» (по мнению её разработч...

[Перевод] Введение в цифровую обработку сигналов Эта статья дает общее представление о том, что такое ЦОС (цифровая обработка сигналов), как она работает и какие преимущества может предложить. Цифровая обработка сигналов включает разработку алгоритмов, которые могут быть использованы для улучшения сигнала определенным обр...

Модификация JSON респонсов в Laravel Вчера я опубликовал перевод статьи на тему оптимизации использования респонсов в Laravel с "простейшими" данными. То есть когда в ответ нужно отдать какое-то число, строку, массив или объект. Но что делать если приложение построено на использовании Json Resource? Или ещё бо...

Без холивара «переписать все на Go»: проблема переносимости в Python и ее решение На скриптовых языках удобно разрабатывать… И на этом удобство заканчивается. Вне машины разработчика начинаются проблемы. Особенно если вы пишете какой-то прикладной тулинг — cli-утилиты, вспомогательные приложения в вашем SDK и прочее. Вы даже не можете рассчитывать на то, ...

Работаю на стройке, чтобы писать статьи на Хабре В этой статье я хотел бы совсем чуть-чуть порассуждать о том, с какими намерениями авторы приходят на Хабр, а также рассказать вам чем занимаюсь лично я, чтобы быть одним из авторов Хабра. Читать далее

Публикация локального сервера из дома в интернет Приветики. Надеюсь, все отошли от новогодних, и можно писать и читать дальше. Как хозяин умного дома, я состою в чатике по Home Assistant, там прекрасное ответчивое комьюнити, но периодически задаётся вопрос по тому, как собственно выставить свой веб сервис в интернет. И ока...

Паттерны или химеры программирования Данная статья будет полезна для Junior / Middle Java разработчиков, которые готовятся к собеседованию или просто развиваются и хотят немного конкретики по части паттернов, и так как в данной статье я покажу 5 паттернов, с которыми мы как разработчики работаем в Java Core, с ...

Гайд: проектируем систему цветов. Всё про styles, tokens, variables В этой статье я расскажу как упорядочить цвета в макетах и в уже готовом продукте; как перейти от стилей к токенам (variables), а также поделюсь рекомендациями для тех, кто только собирается внедрять стили и переменные для цветов. Читать далее

Настройка двухфакторной аутентификации по VPN. Континент 4 — MultiFactor Возможности злоумышленников растут и украсть пароль не предоставляет сложности. Одним из вариантов решения проблемы безопасности паролей может служить система многофакторной аутентификации. В этой статье мы покажем, как организовать двухфакторную аутентификацию при организа...

Бесшовный апгрейд ПО для системы хранения данных: как организовать и улучшить Любое программное обеспечение необходимо обновлять — ПО для систем хранения данных (СХД) не исключение. Логика апгрейда в СХД не тривиальна. В системе есть несколько контроллеров хранения, обновлять которые нужно последовательно, учитывая все возможные риски — потерю отказоу...

Система иконок на React Очень часто при разработке React-приложения нам приходится работать с большим количеством иконок в проекте. Наверное, каждый разработчик стремится максимально упростить и автоматизировать подобные рутинные задачи. Есть несколько способов работы с иконками в веб-приложениях, ...

Kafka, go и параллельные очереди В этой статье я расскажу о паре способов увеличить пропускную способность системы с помощью партиций kafka и каналов go. В качестве библиотеки-клиента kafka буду использовать segmentio/kafka-go. Статья будет полезна начинающим go-разработчикам, которые уже знакомы с основным...

Что нужно знать джависту, чтобы пройти собеседование Небольшая заметка с технологиями и полезными ссылками, которые позволили мне пройти собеседование и работать в Сбере. Читать далее

Дизайн-система Gravity UI: как легко построить свой интерфейс Всем привет, я Алексей Сизиков, руководитель отдела User Experience в Yandex Cloud. В этой статье я хочу поделиться новостью: мы выпустили нашу дизайн-систему и библиотеку компонентов Gravity UI в опенсорс. Под катом — рассказ, зачем мы сделали Gravity UI, как его ...

Machine Learning инженер: что/где/как изучать, чтобы въехать Привет, хаброчеловек!В этой статье мы обсудим путь среднестатистического обывателя в Machine Learning, а именно — как стать ML-инженером. Поговорим о специфике области, какие требуются знания и скиллы, что нужно делать и с чего начать. Читать далее

Адаптация, а не онбординг: что мы делаем, чтобы наши сотрудники влились в компанию? Привет, Хабр! Я Анна, руководитель отдела адаптации, обучения и развития в ГК «Автомакон». У нас в команде 800+ специалистов на удалёнке, продолжается бурный рост, и возникает вопрос: как не потерять сотрудников на этапе адаптации? Мы выделили отдельную роль – куратор процес...

5 способов писать эффективный код на Go: от названий переменных до архитектуры Если вы задумывались, какие практики использовать, чтобы писать код на Go быстро и качественно, этот материал для вас. Руководитель группы разработки подсистем Геннадий Ковалев и эксперт по разработке ПО Даниил Подольский обсуждают пять способов повысить эффективность разраб...

Управление загрузкой с помощью PostgreSQL и pg_headerkit Привет, Хабр!Supabase – это крутой open-source аналог Firebase, с его помощью можно организовать крутые штуки вроде ограничения скорости запросов.Supabase – это инструмент, который дает возможность создавать масштабируемые серверные решения, используя PostgreSQL. С его помощ...

Проектирование боевых систем в играх: с чего начать Большинство игровых продуктов в том или ином виде сталкиваются с боёвкой. Где-то это эпический кошмар уровня Dark Souls, где-то полуавтоматический бой между группами чибиков в мобильном батлере. В этой статье я покажу один из подходов, используемый геймдизайнерами при проект...

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

Моделирование движения космических тел В этой статье я подробно объясню и покажу, как написать на Python простой симулятор движения космических тел и что для этого не нужно знать. Моделирование - очень удобный и понятный способ вычисления многих процессов. Он не требует использования законов, описывающих движение...

Производственный календарь в PostgreSQL Новый Год уже совсем на носу, а значит нужен свежий производственный календарь в базе данных PostgreSQL. Но как совершенно обленившийся IT-шник, заводить его руками не хочется. Хочется, чтобы вызовом одной функции он сразу появился. Ну а уж из этой функции можно его сохранит...

Семантический поиск и генерация текста на R. Часть 1 Для этой задачи использую LLM (Large Language Models - например, chatGPT или opensouce модели) для внутренних задач (а-ля поиск или вопрос-ответную систему по необходимым данным).Я пишу на языке R и также увлекаюсь NLP (надеюсь, я не один такой). Но есть сложности из-за того...

Как увеличить шрифт так, чтобы контейнер не поехал? Адаптация UI/UX для людей с проблемами зрения в XML и Compose Я — Денис, Android-разработчик в «Лайв Тайпинге». В этой статье я продолжу рассказывать о современных подходах разработки адаптивного UI /UX для людей с ограниченными возможностями, разных национальностей и особенностями развития. В этой статьей я расскажу про разработку инт...

Нефть глазами аналитика данных Любите ли вы работать с данными, как люблю это делать я? Страдаете ли вы также от несовершенства инструментов для анализа данных? И вот, буквально в первых строках, я понимаю, что мне надо быть очень аккуратным, дабы не задеть чувства, к примеру, фанатов Excel или Notepad+...

DIY: Ваше собственное облако на базе Kubernetes (часть 3) Вот мы и подобрались к самому интересному: запуску Kubernetes в Kubernetes. В этой статье мы поговорим о таких технологиях, как Kamaji и Cluster API, а также о том, как интегрировать их с KubeVirt.В прошлых статьях мы уже рассказывали, как мы готовим Kubernetes на bare metal...

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

Использовать LLM в оффлайне — LocalAI, Ollama, Flowise Привет, Хабр.В этой статье о том, как без написания кода поставить себе локально и использовать LLM без подключения к сети. Для меня это удобный способ использования в самолёте или in the middle of nowhere. Заранее выгрузив себе нужные файлы, можно делать анализ бесед саппор...

ВРМ. Смарт-инструменты «Таблица -> Схема» для формализации бизнес-процессов. Рестайлинг ARIS SmartDesign Ставится задача повторить доселе непревзойдённый ARIS SmartDesign, который по табличному представлению процесса автоматически рисует схему процесса (структуры чего-либо). Схемы процессов желательно строить в нескольких процессных нотациях (EPC, VAD и т.п.). ARIS SmartDesign ...

Опрос: как долго вы готовы работать в одной компании? Хоть 10 лет, или 2-3 года — и пора на новое место?

OpenVMS: операционная система для атомных станций. Redis Мы продолжаем погружение в основы операционной системы OpenVMS. В прошлых статьях мы установили её в качестве виртуальной машины, настроили сеть и активировали лицензии. Бонусом поставили туда SSH и даже организовали Web-интерфейс для удобного управления. Теперь пришла пора ...

[recovery mode] Cамый научный гайд о пользе дыхательной гимнастики Многие ставят дыхательные практики в один ряд с эзотерикой. А кто-то слышал только про «дыхание маткой». На самом деле дыхательная гимнастика — это простой, но научно доказанный способ справиться со стрессом и предотвратить появление огромного количества заболеваний. Почему ...

[Перевод] Как я перестал бояться и полюбил Vim Я работаю программистом уже почти десять лет. И, как и для каждого, кто посвящает работе до 2/3 суток, удобный инструментарий имеет для меня огромное значение. Сегодня я хочу как следует порефлексировать, поэтому статья выйдет слегка необычной. Сразу же хочу дать дисклеймер:...

Как я за месяц написал интерпретируемый язык программирования на Python Привет, Хабр! В этой статье я хотел бы поделиться опытом создания своего языка программирования.ПредысторияМне 14. Обучаясь на втором году Яндекс Лицея, нужно было написать несколько проектов. Первым из них стал проект на PyQT5. Я долго думал над идеей и вспомнил, что летом ...

Безопасный Zookeeper: SASL with Digest-MD5 Привет! Столкнулся с тем, что быстро не нашел простой инструкции, как с использованием SSL и SASL настроить безопасный кластер из нескольких Linux узлов Zookeeper, и решил это исправить. В этой статье поговорим о том, как: - Настроить Zookeeper в кластере из трех узлов без ш...

Как построить работу над кодом Чтобы всем было удобно его писать, обсуждать и рефакторить — без распухшего бэклога и лица девопса.Мне кажется, что если спросить 10 случайных разработчиков о том, как у них в командах устроена работа над кодом, то в 9 случаев ответ будет «Ну, как придётся. Как привыкли!».Эт...

Логи из docker compose / docker swarm в Grafana / Loki быстро и просто Хочу показать как развернуть готовый и полностью работающий стек мониторинга Grafana + Loki + Prometheus + Pushgateway + Promtail за пару минут (в прямом смысле этого слова), без необходимости устанавливать на машину дополнительное ПО (плагины dockerm плагины логирования) и ...

[Перевод] Удачный переход Netflix на GraphQL В 2022 году с приложениями Netflix для iOS и Android произошли серьезные изменения. Мы перевели мобильные приложения Netflix на GraphQL с нулевым временем простоя, что повлекло за собой полное перепроектирование от клиента до уровня API.До недавнего времени наши мобильные пр...

Как я в ковид уехал в деревню поднимать с/х производство. И ни о чем не жалею Я получил экономическое образование, торговал на фондовой бирже, а 1 ноября 2009 года начал брать молоко, мясо в деревне и продавать в Москве. 2 года вставал в 4 утра, чтобы забрать продукты, а до 2-х ночи с женой варили компоты и пекли запеканки. Позже купил 20 Га в Тульско...

Как работать на удалёнке и не сойти с ума: 7 советов от редакции Лайфхакера У удалёнки целое море плюсов, но, чтобы они не испарились, нужно правильно организовать рутину. Делимся секретами комфортного и продуктивного рабочего дня дома.

Из чего собрать компьютер: блоки питания, корпуса и кулеры из топа продаж XCOM-SHOP.RU Когда речь заходит о сборке компьютера, те, кто далек от того, чтобы называться профи, уделяют основное внимание только парадной стороне вопроса. Их интересует только то, какой процессор выбрать в качестве основы, какую взять видеокарту, чтобы та тянула не только игрушки, но...

Как я устроился в Амазон и перестал переживать за свой английский Готовитесь к собеседованию за рубежом и переживаете за свой английский? Хотели бы работать в международной компании, но сомневаетесь, хватит ли языка? Не уверены, поймут ли ваш акцент? Тогда эта статья может помочь.Меня зовут Андрей Столбовский, последние 5 лет я работал в Я...

Точка касания, или Как выстроить коммуникацию между командами внутри компании Работа в крупных компаниях — это не только ДМС и корпоративный мерч. Это большой поток информации, связанный и не очень с дизайном. Чтобы приступить к проекту, нужно раскопать документацию, пообщаться с командой, поисследовать гипотезы. В корпорациях проект может длиться нес...

[Перевод] Как работает сеть в контейнерах: Docker Bridge с нуля В этой статье мы собираемся разобраться со следующими вопросами:* Как виртуализировать сетевые ресурсы, чтобы контейнеры думали, что у них есть отдельные сетевые среды?* Как превратить контейнеры в дружелюбных соседей и научить общаться друг с другом?* Как выйти во внешний м...

Декодирование файла, поиск уязвимости и взлом пароля. Решаем задачи по сетям из KnightCTF 2024 Привет, Хабр! В прошлой статье я рассказывал о турнире KnightCTF 2024, который организовала команда из Бангладеша. Но туда вошли не все задачи. Под катом расскажу еще о четырех из категории networking. Читайте далее — узнаете, как получить секретную информацию в bash-histor...

9 функций SAP, которые есть у нас дома SAP ушёл, а вместе с ним — множество инструментов для контроля показателей и автоматизации процессов. Но у части модулей есть альтернативы в российских решениях! Кое-что я покажу вам на примере системы «Первая Форма», в которой работаю сама.  Читать далее

Карты, деньги, два способа оплаты: как устроена Система быстрых платежей Эволюция платежей дошла до того, что мы можем перекидывать друг другу деньги за обед и оплачивать доставку продуктов лёжа на диване, а бизнес — принимать платежи за проданные товары или услуги, расплачиваться с подрядчиками и платить зарплаты сотрудникам, зная только номер и...

Ещё одна статья про карьеру: 15 убеждений, которые превратились в инсайты Сознание начинающего разработчика отличается от сознания его опытного и преисполненного коллеги. Даже у меня были убеждения,  которые изменились с приростом опыта. Всего их было 15. Я придерживаюсь их всех и они работают (кроме последнего, с ним прям беда).Я Екатерина П...

Теорвер не нужен в играх, но это не точно Теория вероятностей – одна из важных частей не только игрового дизайна, строго заскриптованые события без вариантов быстро вызовут скуку у игроков. У меня за спиной был всего один год этой дисциплины в универе, и не сказать, чтобы нужно было применять это каждый день, но ког...

[Перевод] Xv6: учебная Unix-подобная ОС. Глава 8. Файловая система Файловая система организует и хранит данные. Пользователи и программы работают с данными, а файловая система сохранит данные даже после перезагрузки компьютера.Файловая система xv6 предлагает Unix-подобные файлы, директории и пути и хранит данные на virtio-диске.Глава расска...

Что такое синхронизированные векторные измерения и как их моделировать Привет, Хабр! Представим, что перед нами такой сложный объект для управления, как электроэнергетическая система России. Чтобы рассматривать ее в виде единого целого, нужны высокоточные измерения из различных точек энергосистемы, зачастую географически удаленных друг от друга...

Двуязычный словарь от ChatGPT за 7 (нет) простых шагов В жизни каждого человека наступает миг, когда ему нужен загружаемый испано-английский словарь с открытой лицензией. В этой статье я расскажу о том, как сконструировал собственный иллюстрированный словарь, используя ChatGPT (и выложил его на GitHub). В статье не будет никаких...

Docker для новичков — #1 Что такое контейнер, image, DockerHub? В этой статье я расскажу о том, что такое Docker, Docker Desktop и как этим пользоваться! Два способа создания image, значения вкладок Docker Desktop Читать далее

Как восстановить внутренний ресурс: советы для менеджеров проектов Ежедневно мы сталкиваемся с миллионами факторов, которые требуют от нас, как от менеджеров, колоссальной эмоциональной и физической отдачи: переговоры с клиентами, выстраивание процессов в команде, решение конфликтов и спорных моментов. Чтобы продолжать работать в положитель...

Как тестировщику уйти из корпорации в стартап и не сойти с ума Меня зовут Лена и я QA Engineer в Brickit, приложении для сканирования кубиков Lego. До этого мне довелось поработать в крупном зеленом банке. В этой статье я расскажу об отличиях корпорации и стартапа в разрезе процессов тестирования и разработки, а также дам несколько прак...

Построение пайплайна обработки данных в реальном времени с использованием Python Привет, Хабр!Обработка данных в реальном времени стала важной составной частью современного мира. Бизнес, исследователи, разработчики и многие другие специалисты сталкиваются с необходимостью обрабатывать потоки данных в реальном времени, чтобы принимать решения быстрее и б...

[Перевод] Создаем свою STL-совместимую реализацию std::allocator с лучшей производительностью Реализация защиты от сбоев из-за фрагментации кучи и повышение скорости выполнения с помощью STL-альтернативы std::allocator, работающей с блоками памяти фиксированного размера.В этой статье описывается реализация STL-совместимого аллокатора, ориентированного на выделение и ...

Почему мы боимся джунов? Несмотря на бурный рост IT-индустрии, я всё чаще сталкиваюсь с ужасным отношением к людям, которые хотят работать в IT. Практически под каждым материалом для новичков можно найти десятки комментариев с негативом. Я долго не мог понять, почему опытные специалисты презирают «с...

Как конструктор диалогов прокачал Робота Макса Привет, Хабр! На связи команда контента Робота Макса, которая отвечает за структуру и логику его ответов, а также разрабатывает и выводит эти ответы в прод.У Робота Макса уникальная по объёму и потребностям аудитория. Чтобы дать всем простые и полезные ответы, необходим боль...

[Перевод] Hono vs. H3 vs. HatTip vs. Elysia — современные замены Express для сервера (или без сервера) H3 отмечает, что Express.js - старый и малоразвивающийся фреймворк, являющийся не оптимальным выбором для новых проектов из-за потенциальных проблем безопасности и утечек памяти, что, к слову, касается и Koa.В нашей статье мы сделаем акцент на фреймворках, поддерживающих зап...

Защита JPG-файлов от копирования с помощью Exif и IPTC-тегов Всем привет! На связи Павел Стариков Fullstack-разработчик digital-агентства. Представьте, вы потратили целый день на создание хороших фотографий для статьи на сайте. Выставили свет, поставили «на уши» множество людей, долго работали в «фотошопе». Фотографии получились отлич...

Материалы для разработчиков систем на кристалле: функциональная верификация, итеративная сборка, свой ПЛИС-кластер Привет, Хабр! Принесли материалы с недавнего митапа для FPGA/ASIC/RTL-инженеров — добавляйте в закладки, чтобы посмотреть в свободное время. В докладах вас ждут:• Шаблоны документов, которые нужны при функциональной верификации, и шаблон проекта для организации итеративной...

Elementary OS 7.1 уже вышел: изменения, добавления и перспективы дистрибутива Привет, Хабр! Хорошие новости: на днях появился новый выпуск Elementary OS 7.1. Разработчики ОС позиционируют её как альтернативу для пользователей Windows и Mac OS, утверждая, что интерфейс системы простой и понятный, а функции и возможности обширны. Чтобы убедиться в этом,...

Как организовать спринт так, чтобы команда не выгорала Работа проджект-менеджера со стороны может показаться понятной и давно описанной в книгах. В то же время нам приходится работать не только и не столько с проектами, сколько с людьми. И вот тут возникает очень много вещей, которые зависят больше от так называемых soft-скиллов...

Как построить гибкую и адаптивную компанию чтобы она могла достигать результатов быстрее? Привет, хабр. Меня зовут Курдюмов Дмитрий, я основатель консалтингового агентства Smart units. Более 7 лет я помогаю компаниям трансформировать их процессы и структуру для достижения большей адаптивности. В этой статье хочу поделиться некоторыми подходами к построению к...

Использование возможностей Angular. Часть 2 Как работают utility types, для чего они нужны и как использовать в работе. Для чего нужен infer, in, extends Читать далее

Как написать идеальный запрос для ChatGPT Управление промтами – важный навык для работы с нейросетями. Однако иногда не знаешь, как лучше их прописать. В результате ответы, генерируемые чат-ботами, оказываются очень общими и неточными.Я потратил много часов на различные курсы по промт-инжинирингу и постоянно тестиро...

Sun Netra X1 и опыт в его администрировании Приветствую читателей! В мои руки попал интересный экземпляр – сервер Netra X1 компании Sun Microsystems. Привлёк данный аппарат архитектурой Sparc, которой я раньше мало где встречал. Аппарат конечно старый, но работает безупречно. Тут родилась идея установки BBS и операцио...

Как использовать ресурсы Kubernetes по максимуму для работы с Go-приложениями Привет! Меня зовут Антон Жуков, я руковожу группой разработки в Сбермаркете. В профессии я уже более 12 лет, с Golang работаю с 2016 года, а с Kubernetes — с 2018 года. В этой статье расскажу об основах Kubernetes, возможных проблемах и решениях, а также о том, как грам...

Obsidian: Мой опыт с LYT/Ideaverse и его русификация В этой статье я расскажу о том, как организовал себе единое место для заметок, документов и проектной документации с помощью Obsidian и шаблона LYT, а также дам ссылку на русифицированный шаблон для создания своей такой системы. Читать далее

Zustand.js: современный, невесомый, производительный и очень гибкий state manager Zustand существует и развивается уже несколько лет, но многие разработчики до сих пор либо не знают о нем либо имеют не достаточно информации для того, что бы перейти к его использованию.В статье я расскажу:о простом интерфейсе Zustandо его внутреннем устройствео производите...

Как усилить безопасность Linux Debian с ispmanager для сайта на Wordpress Это первая статья из цикла, в котором расскажем о практических способах обеспечить безопасность сервера. В качестве примера — операционная система Linux Debian с панелью управления ispmanager 6 и сайт на Wordpress.В этой статье опишу:▪️ Безопасность в процессе установки Debi...

Как сделать автоматический полив: грунт и гидропоника Полив — регулярная и трудоемкая задача, которая отнимает массу времени, поэтому ее не мешает автоматизировать, чтобы все работало само. Из песни слов не выкинешь: «Вкалывают роботы, счастлив человек».В преддверии дачного сезона мы решили поделиться двумя решениями автоматиза...

От хаоса к порядку. Как мы внедряем стандарты в CDEK Привет, Хабр! Меня зовут Олег Бондарь, я архитектор решений в CDEK. В этой статье расскажу о стандартах — сводах правил и требований, которые позволяют всем участникам процесса быть в общем контексте, действовать единообразно и совершать меньше ...

Нужно ли разработчикам проектирование? Такие схемы на проектах готовят наши архитекторы. Достаточно ли их чтобы оценить состав и сложность каждого модуля, объем и трудоемкость работ в целом. Поможет ли такая схема при планировании работ? В статье рассуждение о том что могло бы помочь. Читать далее

Я мыслю MOV EAX, 1 Чем больше усилий ты прикладываешь, тем лучше это у тебя получается. Программирование не исключение, и чтобы с уверенностью сказать: "Я могу написать это" нужно много работать. Эта статья о том с какого языка начать путь в программировании и о том как понять принципы работы ...

Как спасти осьминога от вымирания (Автобэкап OctoPrint в Яндекс диск через Rclone) Всем доброго времени суток.     В этой статье покажу how to организовать копирование автоматически создаваемых бэкапов octoprint (и не только) на Яндекс диск посредством Rclone.

Роадмап по современному фронтенду от KTS Эта статья — цельный план развития во фронтенде. Расскажем, что из себя представляет современный фронтенд и какие знания нужны для востребованности на рынке труда.Статья подойдет как для начинающих специалистов, так и для более опытных, которые хотели бы получить какой-то ор...

Еще один год из жизни ReactOS Здравствуйте, дорогие друзья!Вот и заканчивается 2023 год. В этой статье я хочу продолжить начатую в 2021 году традицию вспоминания наиболее важных событий из жизни ReactOS за год. То что статьи не появляются на Хабре, не значит что система мертва. Медленно, но верно, в Reac...

Основы тестирования в Go: mock-объекты, fuzzing и property-based testing Привет, Хабр!Golang как ЯП очень хорош для разработки высокопроизводительных приложений. В любом проекте наступает момент, когда нужно проверить, насколько хорошо все работает на самом деле, это можно сделать с помощью тестирования.Тестирование в Go можно выполнять с помощью...

Книжный клуб АСКОН: что читают разработчики САПР? Сегодня в АСКОН работает больше тысячи человек: от Санкт-Петербурга до Владивостока, часто разработчики одного продукта могут не знать своих коллег из других команд и тем более сотрудников региональных офисов, которые занимаются внедрением разработанного ПО. Что может объеди...

[Перевод] Java ScopedValue: Ускоренный ThreadLocal В инкубаторе JEP-429 появилась новая альтернатива ThreadLocal под названием ScopedValue (в значительной степени как поддержка и развитие Virtual Threads). ScopedValue предназначен для того, чтобы предоставить более легкую альтернативу ThreadLocal, которая хорошо работает с в...

Кто знает, что значит GPT в названии ChatGPT, могут дальше не читать В настоящее время искусственный интеллект (ИИ) стремительно развивается. Мы являемся свидетелями интеллектуальной мощи таких нейросетей, как GPT-4 Turbo от OpenAI и Gemini Ultra от Google. В Интернете появляется огромное количество научных и популярных публикаций. Зачем же н...

Айтишникам нельзя не быть креативными, и я сейчас это докажу Всем привет. Меня зовут Антон, я Scrum-мастер IT-отдела компании AppEvent и по-совместительству front-end разработчик. В моей первой статье на Хабр хочу рассказать вам, почему же айтишнику нужно быть креативным и как этот навык вообще можно проявить. Ведь зачастую он являетс...

[recovery mode] Как вести несколько проектов и не сойти с ума. Очередная статья про тайм-менеджмент Привет! Меня зовут София, я маркетолог проекта Fitil, в блоге которого публикую эту статью. Fitil — это сообщество для знакомств и общения. Мы стартап, а значит, задач очень много.Кроме Fitil я веду ещё два проекта как маркетолог: занимаюсь позиционированием, запусками ...

10 признаков недопонятого Agile, или почему ваш Agile не работает Всем привет! Меня зовут Анна Мозер, я работаю тимлидом системных аналитиков в X5 Tech. Мне удалось поработать и в корпорации, и в стартапе, и в качестве фриланс Delivery Manager на этапе запуска стартап команды. Системный аналитик находится в центре между бизнесом и ком...

Настраиваем CI/CD с GitHub Actions и werf: инструкция для новичков В этой статье мы рассмотрим, как настроить пайплайн CI/CD в GitHub: подготовим репозиторий, зальём туда приложение, создадим файлы конфигурации GitHub Actions, в которых опишем, как собирать наше приложение и деплоить его в кластер Kubernetes, развёрнутый под управлением Dec...

Typescript ENUM — баланс использования Привет Всем. Меня зовут Михаил. В НЛМК нахожусь на должности Frontend-разработчика.  Занимаюсь разработкой внутренних информационных систем на React + Typescript. В этой статье поговорим про тип enum (перечисление) в Typescript, о случаях когда его можно и нужно исп...

Process Ghosting. Как работает одна из опаснейших техник обхода антивирусов Для подписчиковРазличные способы скрытия работы своего кода постоянно будоражат хакерские умы. В этой статье я покажу, как запускать процессы при помощи техники Process Ghosting, а затем разберем, как работают системы обнаружения вредоносного кода.

PKI для IOT, архитектура защищенной сети ESP32 + Mosquitto SSL и Flash Encryption для хранения сертификатов Цель статьи - показать вариант построения защищенной Iot-инфраструктуры для сети устройств на базе ESP32 и обменяться опытом. Общую идею и весь проект разделил на темы:• развертывание mosquitto SSL/TLS из docker-контейнера• создание сертификатов для брокера Mosquitto ...

Мой 2-х месячный опыт настройки Selenoid под Android за 10 минут Если вы читаете эту статью, то наверняка слышали о Selenoid. Это мощное решение написанное на Go от компании aerokube для управления Docker-контейнерами, в которых «завёрнуты» все необходимые программы и драйверы для тестирования в браузерах или на Android-эмуляторах.Как утв...

Уравнение с тремя неизвестными: как отлавливать баги в системах хранения данных Привет! Меня зовут Никита Гуцалов, я инженер в компании YADRO и занимаюсь разработкой ПО для системы хранения данных TATLIN.UNIFIED. Вообще с системами хранения данных (СХД) я работаю уже много лет и люблю эту тему, поскольку она постоянно бросает новые вызовы, заставляя реш...

Как мы создавали дизайн-систему: опыт компании Звук Привет, Хабр! Меня зовут Мария Бажина, я Android Developer в компании Звук. Вот уже полтора года я работаю над дизайн-системой, поэтому знаю здесь каждую мелочь. И в этой статье я хочу рассказать, зачем нам нужна дизайн-система и в каком виде она существует в нашем прое...

Сравнение сборщиков мусора в Unity и .NET В этой статье я хотел бы рассказать о различиях между сборкой мусора в Unity (IL2CPP) и .NET. Несмотря на то что IL2CPP существует более 10 лет, я до сих пор встречаю недоумение, когда беседа заходит на тему Garbage Collector (GC) касательно Unity. Считать реализацию GC в .N...

Зачем изучать ITSM? Всем здравствуйте. Эту статью я написала не как консультант-методолог, а как эмпатичный, отзывчивый и платежеспособный пользователь.Сталкивались ли вы с ситуацией, когда взаимодействуя с исполнителем по какому-то заказу или услуге, получаете такую порцию негатива, что потом ...

Что не так с «Авророй» — российской мобильной OC Мы в KODE занимаемся мобильной разработкой и следим за развитием отечественного рынка. ОС «Аврора» появилась на наших глазах. Мы долго не понимали, успешна она или нет, и если да — почему до сих непопулярна. В статье собрали полную картину по открытым источникам, распутали п...

Тесты: 100% покрытия и юниты не нужны Мы покрываем код тестами, когда хотим быть уверенными, что в негативных сценариях он сработает надёжно. Хочется, чтобы тесты были не бланковой заглушкой, а полезной нагрузкой, которая позволит считать, что наше поведение достаточно валидное. Так мы можем обеспечить корректно...

DVC — прекрасный инструмент для DataScience Привет Хабр, меня зовут Дмитрий Несмеянов, я являюсь руководителем направления разработки ML-инфраструктуры "ЛОКО-банка". Сегодня я хочу рассказать про DVC: инструмент, который многие, незаслуженно, обходят стороной. Была хорошая статья от Райффайзен Банк, в этой статье я по...

Хороший, плохой, никакой: почему важно проектировать дизайн и как это делать? Всем привет! Меня зовут Владислав Шиханов, я ведущий программист в CDEK. В этой статье я хочу рассказать о том, как мы пришли к проектированию и review плана разработки до начала реализации задачи, что это дало и как повлияло на с...

Умный модульный ресторан: привез, поставил, заработал Что делать, если нужно поставить в какой-то точке ресторан, но капитальный вариант не подходит, а фудтрак не дает ассортимент блюд и полноценную кухню?В таком случае поможет модульный ресторан — их как раз начали собирать в Подмосковье. Мы посетили пилотный проект, который п...

Создание шаблонов сайта в Joomla 4+ Последние статьи на Хабре о создании шаблонов для Joomla - 2015-2017 годов. В этой статье опытным разработчикам будет интересно посмотреть на отличия от предыдущих версий Joomla и, возможно, дополнить статью ценным советом. Тем же, кто чаще работал с другими движками статья ...

Используем MLOps-конвейер: пример работы с Cloud ML Platform для построения сервиса распознавания лиц Есть два подхода к работе с машинным обучением (Machine Learning, ML): быть человеком-оркестром и задействовать «зоопарк технологий» для каждого этапа, или работать с готовым набором инфраструктурных решений, который позволяет выстроить MLOps-конвейер в рамках одной платфо...

Автоматизированная торговля акциями с использованием глубокого обучения с подкреплением В этой статье мы начинаем рассматривать практическое применение библиотеки FinRL для построения торгового агента. В предыдущей статье мы вкратце рассмотрели библиотеку FinRL, предоставляемые ей возможности моделирования рынка и обучения торговых агентов на основании алгоритм...

HTB Analytics. Используем баг в OverlayFS, чтобы сбежать из Docker Для подписчиковВ этом райтапе я покажу процесс эксплуатации уязвимости CVE-2023-2640 в файловой системе OverlayFS для Linux, но сначала нам нужно будет атаковать систему Metabase, чтобы получить доступ к хосту.

Гибкость ― это важно: как мы «расхаркодили» поля в карточке устройства и какие возможности это дает нашим пользователям Привет! Команда продукта «‎Инферит ИТмен» в этой статье делится небольшим, но очень важным для нашего софта релизом. Мы всегда ориентируемся на запросы наших пользователей и дорабатываем фичи в продукте, которые реально нужны клиентам. Одним из таких запросов была возмо...

Как содержать пароли. Мой сетап Я долго собирал информацию о том, как организовать свои аккаунты. Как сделать доступ к ним достаточно надёжным и стойким к утере девайсов. Меня интересовало, как я могу залогиниться туда, где многофакторная авторизация через телефон, в случае потери телефона. Или, ...

Пишем Ansible-модули для управления разными системами хранения данных через Swordfish Большинство современных систем хранения данных (СХД) предоставляют REST API для управления ими, включая настройку, конфигурирование, выполнение различных команд, получение логов, работу с пользователями и т.д. В зависимости от производителя СХД REST API могут отличаться друг...

Отвязать рабочее место от офисного стола: подводные камни и новые решения Возможность совмещать работу в офисе и из дома вряд ли кого-то удивит: многие компании если не поддерживают, то не препятствуют такой практике. Но на ИТ-отделы в этом случае ложится дополнительная нагрузка: надо настроить цифровое рабочее место, обеспечить его гибкость, тран...

[Перевод] Clean architecture и MVVM в iOS разработке В этой статье мы покажем на примерах проектов как паттерны MVVM и Clean Architecture могут быть применены в iOS приложении. Читать далее

Как обычному фронтендеру стать по-настоящему классным фронтендером Меня зовут Илья, я фронтенд-разработчик в Авито, и я долго искал эффективный способ развития своих скиллов. Под катом я подробно описал весь свой путь и рассказал, получилось у меня это или нет. Интересно будет всем: и тем, кто только ищет свой путь, и тем, кто уже всё знает...

Plymouth: делаем загрузку Linux веселее Или ещё один способ показать своё превосходство над "average Windows fan". Дружим современный мем со старым и почти забытым инструментом. Читать далее

Sub-GHz во Flipper Zero и бесконечное множество внешних антенн В первой части статьи “Sub-GHz во Flipper Zero и бесконечное множество внешних модулей” мы рассмотрели модули для Flipper Zero, работающие в до-гигагерцовом диапазоне, а именно на частоте ±433MHz. И как известно, в радио важно не только, как ты преобразуешь сигнал, но и чем ...

SQL инъекции для продолжающих: ломаем настоящий сайт Про SQL-инъекции написано огромное количество статей. Все знаю про пресловутые ‘ OR 1 = 1 и аналогичные конструкции, но далеко не все реализовывали их на практике. В этой статье мы разберем на практике некоторые способы реализации SQL-инъекций на примере уязвимого сайта.Стат...

Даем нейросотрудникам на базе ChatGPT настоящую постоянную память На нашей no-code платформе мы создаем GPT-ботов, которых мы называем нейросотрудниками. Они уже многое умеют и даже организуются в целые нейроотделы с нейроруководителями.Но чтобы им стать действительно незаменимыми помощниками в реальных бизнес-задачах, они должны обладать ...

[Хабр, help] Android-разработчица. Как сделать первые шаги? Здравствуйте, я очень долго думала, стоит ли мне регистрироваться на "Хабре" и обращаться, как новичку, по этому вопросу, так как я не первая и не последняя, с подобными запросами.Я хочу стать Android-разработчицей, с нуля.Пожалуйста, укажите с чего начать первые шаги?Пожалу...

Как в git заменить master на другую ветку без использования push --force (перенос стейта одной ветки на другую) Провернуть такое потребовалось второй раз за много лет, но решил записать рецепт о том что можно делать в гите.По каким-то причинам мы наделали в мастер неправильных коммитов, запушили всё это, разработка ушла не туда, но есть вторая ветка, где уже всё правильно, и нужно про...

Необходимые свойства качественных рекомендаций в e-commerce Компания Retail Rocket более 10-ти лет занимается системами рекомендаций в сфере электронной коммерции. Всё это время мы сталкиваемся с неочевидными свойствами алгоритмов рекомендаций, без которых системы не будут решать свои задачи. Мы выделили и описали в статье такие свой...

Клавиатура с трекболом. Как с ней работать В этой статье хочу рассказать о том как работать с клавиатурой у которой есть трекбол.Обычно, клавиатуры которые разрабатываются энтузиастами работают на прошивках с открытым исходным кодом. Если клавиатура работает по проводу, то чаще всего это QMK. Если клавиатура работает...

Освоить 15 млрд рублей. Самый мощный на севере России дата-центр построят в Республике Коми Самый мощный на севере России дата-центр запустят в Республике Коми в 2025 году, о чем сообщил журналистам глава республики Владимир Уйба. «Мы — уникальный уголок в России для создания дата-центров, для которых нужен очень большой объем дешевой энергии. У на...

Необходимые свойства качественных рекомендаций в e-commerce Компания Retail Rocket более 10-ти лет занимается системами рекомендаций в сфере электронной коммерции. Всё это время мы сталкиваемся с неочевидными свойствами алгоритмов рекомендаций, без которых системы не будут решать свои задачи. Мы выделили и описали в статье такие свой...

Миграция микросервисной архитектуры на API Gateway Микросервисная архитектура Amediateka была спроектирована более 6 лет назад предыдущей командой разработки. С тех пор добавилось много новых микросервисов, но фундаментальная часть архитектуры осталась прежней. В этом году мы решили внедрить несколько глобальных изменений, о...

Волшебная таблетка, или Централизованная настройка параметров безопасности ОС Astra Linux с помощью ALD Pro Привет, Хабр! Я инженер в «Группе Астра» из команды ALD Pro. В статье расскажу, как мы создали расширенные групповые политики и инструмент для их применения на базе существующего механизма групповых политик ALD Pro. Благодаря этому получилось упростить настройку конечны...

Начинаем работать с цифровыми картами (ГИС) Обзорная статья, которая поможет разобраться с базовыми понятиями, познакомит с основами, даст общее представление о принципах работы цифровых карт и геоинформационных систем (ГИС). Будет полезно тем, кто только начинает работать с картами и хочет начать в этом разбираться....

Стажировки в SOC. Часть 1: как организовать обучение на 1 тыс. человек Пока в ИБ-отрасли говорят о дефиците готовых специалистов, мы в ГК «Солар» выявили действенный рецепт подготовки кадров, благодаря которому значительно увеличили число сотрудников нашей команды – и решили этим рецептом поделиться. Наш цикл статей будет состоять из нескольких...

Не время вкладываться в литий? ИИ помог найти альтернативу для производства аккумуляторов В самом начале нового года стало известно, что Microsoft и Pacific Northwest National Laboratory смогли разработать новый материал, который теоретически может снизить объём используемого при создании аккумуляторов лития. Во всяком случае батарея на базе этого соединения уже ...

Архитектура unity проектов За всю карьеру удалось поработать на множестве игровых проектов в качестве лида. За более чем 5 лет удалось насмотреться на разные подходы к созданию проектов.В данной статье я собрал выжимку статей и мыслей из своего блога о подходах, которые я использую в своих проектах. А...

Как настроить GitHub Actions и не заплакать: пошаговая инструкция Как настроить GitHub Actions и не заплакать: пошаговая инструкцияПривет всем! Меня зовут Виталий, я фронтендер в Mish. Решил недавно освоить полноценный автоматический деплой проекта, чтобы все работало само. Расскажу и вам, что из этого получилось.В статье буду разговариват...

Как мы управляем инфраструктурой на более 1000 серверов при помощи Ansible Привет, Хабр! Мы системные инженеры X5 Tech — Алексей Кузнецов и Борис Мурашин. У нас за плечами больше 15 лет опыта, в том числе поддержка сервисов Rapida, CyberPlat, TeleTrade, сопровождение стека BigData и внедрение кластеров Hadoop. В этой статье мы расскажем, как выбира...

Событийное логирование для аналитики и мониторинга работы телеграм-бота Привет, Хабр! Меня зовут Артем.По мере роста различной работы с телеграм ботом нашего корпоративного телеграм-бота, оптимизация и поддержание его стало более сложной задачей. В какой-то момент я осознал, что нужен надежный способ отслеживания происходящих событий в приложени...

Безопасная параллельная разработка. Istio Как-то в конторе появилась мысль, что надо бы продумать как нам распараллелить работу над одни микриком, так чтобы команды не пересекались друг с другом. Есть некоторые API над которыми работают несколько команд. Каждая работает над своей фичей локально и пишет тесты, а вот ...

Как не превратить облако в денежную дыру Если сейчас запускать проект, то другие идеи, кроме того, чтобы разместиться в облаке не приходят. Облачная инфраструктура дает много преимуществ, но есть проблема — легко не уследить за тратами, забыв про выделенные ресурсы, закупив мощности больше необходимых или используя...

ChatGPT плохо отвечает на «простые вопросы». Как это починить? Привет, Хабр! Меня зовут Антон Разжигаев, я аспирант в Сколтехе и участник научной группы Fusion Brain (AIRI), работающей над мультимодальными подходами. В этой статье я расскажу о нашей последней работе — Multilingual Triple Match — системе для поиска ответов на фактологиче...

Пароли в открытом доступе: ищем с помощью машинного обучения Я больше 10 лет работаю в IT и знаю, что сложнее всего предотвратить риски, связанные с человеческим фактором. Мы разрабатываем самые надежные способы защиты. Но всего один оставленный в открытом доступе пароль сведет все усилия к нулю. А чего только не отыщешь в тикета...

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

Собирать данные VS интерпретировать их: типичные ошибки в e-commerce аналитике Каждый день мы собираем больше 200 ГБ данных о клиентах Lamoda, которые листают сайт и делают заказы. Но красивые цифры про наше хранилище — это одно, а правильные выводы из данных — совсем другое.Меня зовут Александр Айваз, я руковожу командой Data & Analytics в Lamoda ...

«Экструдер» филамента для 3D-принтера своими Оч.Умелыми ручками Небольшая предысторияВ первой моей статье мне в панамку не напихали и вы, уважаемое сообщество, приняли её достаточно благосклонно, а значит, если хочется сделать доброе дело - никакие преграды и разрушения не остановят)))). Кроме того я получил обратную связь, в том числе ч...

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

Кот в мешке: как приручить дикий бинарник Всем привет. Меня зовут Василий. Я работаю SRE в Яндекс Маркете. Недавно у нас прошли тренировки по DevOps от Young&&Yandex. Сегодня я разберу финальное задание, как и обещал участникам тренировок. Оно состоит в том, чтобы развернуть инсталляцию приложения из готовог...

СЕО с вашей прошлой работы: к тебе придет ФСБ Это небольшой пост про очередной вид мошенничества и способы борьбы с ним.Для человека информационно чистоплотного я ничего нового не скажу. Но все-таки считаю важным об этом рассказать и предложить способы проверки. В целом типичный телефонный развод, но удивила таргетирова...

[Перевод] Учимся использовать модуль Ansible Shell для выполнения удалённых команд Мы перевели статью, где подробно рассматривается использование модуля Ansible Shell и различные способы выполнения удалённых команд на узлах в рамках работы по автоматизации. В статье рассматриваются различные опции и модули для выполнения удалённых команд, а также их различ...

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

Как я проектирую интерфейсы Привет, я Егор Камелев, проектировщик интерфейсов (UX-дизайнер). За последние 20 лет я поработал с командами десятков агентств, IT-отделов, действующих проектов и продуктов, стартапов (и запущенных, и незавершённых). Я знаком с сотней команд, не меньше. И среди них не нашлос...

Как автоматизировать переобучение моделей? Меня зовут Денис, я управляю разработкой и внедрением моделей машинного обучения в «Газпромбанке» в розничный бизнес. Наша команда ML-инженеров работает в связке с DevOps, мне помогает мой коллега Виталий VitaliyF. Он готовит инфраструктуру для обучения и переобучения моделе...

[recovery mode] Развертывание программного комплекса на Asp.net на российских ОС В России все больше пользователей и организаций используют российские Linux системы. Но при подготовке пакетов для комплексных решений на этих системах могут возникнуть сложности, связанные с несовместимостью ПО, необходимостью настройки пакетов и т.д. В этой статье рассмотр...

[Перевод] Создание сквозного конвейера MLOps с помощью Open-source инструментов MLOps с открытым исходным кодом: TL;DR Эта статья служит целенаправленным руководством для специалистов по исследованию данных и инженеров ML, которые хотят перейти от экспериментального машинного обучения к готовым к производству конвейерам MLOps. Мы выявим ограничения трад...

Апгрейды для шелл-кода. Изучаем инструменты обхода антивирусов и EDR Для подписчиковАнтивирусы и системы EDR становятся всё навороченнее и даже используют машинное обучение для более точного детектирования. Но у авторов малвари по‑прежнему остаются способы обойти все проверки. В этой статье я покажу несколько техник и инструментов, которые пр...

Как запустить немодерируемый юзабилити-тест? Эта статья призвана показать, как правильно организовать и провести немодерируемый юзабилити-тест, чтобы максимально повысить удобство и понятность вашего продукта для конечного пользователя. Она будет полезна UX/UI-дизайнерам, продуктовым менеджерам, маркетологам, и, коне...

Управление электромеханической системой на основе ДПТ. Метод желаемой ЛАЧХ и другие средства Matlab Частой задачей при обучении теории автоматического управления является расчет корректирующего устройства методом желаемой ЛАЧХ. Эта задача дается для ознакомления с большим миром управления в частотной области. Зачем вообще частотный метод, когда есть модальный? Дело ...

У нас есть должность «бадди» — приятеля, который поможет во всём «Дмитрий, помогите, пожалуйста, у меня не открывается рабочий стол. Уже половина десятого, а я ещё не залогинилась. Что мне делать? Как быть? Меня уволят». Это позвонила Даша, новая сотрудница. Позвонила она своему бадди, человеку, отвечающему за то, чтобы новички нормальн...

«Одна учетная запись — десять участников»: что такое федеративный доступ и как с ним работать Привет! Я Максим Филимонов, ведущий инженер команды администрирования сервисов в Selectel. Для доступа в аккаунты с инфраструктурой, которую мы сопровождаем, приходится хранить множество паролей, контролировать их соответствие парольным политикам, проводить ротацию учетных ...

Подход, который помог нам точно оценить трудозатраты на разработку дизайн-системы При планировании проекта команде дизайна приходится отвечать на много вопросов. Главные — что делать, как долго и сколько это будет стоить. Ответы есть не всегда и точно не у дизайнеров, которые занимаются отдельными задачами и не видят картину в целом. Меня зовут Александр...

Операторы PostgreSQL для Kubernetes. Как мы выбирали идеальный вариант для организации системы DBaaS Некоторое время назад у нас возникла задача организовать возможность создания managed баз данных. Сложность данной задачи в том, что нам надо развертывать и управлять тысячами баз данных PostgreSQL, которые обеспечивают репликацию, бэкапы, мониторинг и другие полезные пользо...

Полное краткое руководство по grammY — JS-библиотеке для создания Telegram-ботов Привет! Меня зовут Арсений, я сеньор фронтенд-разработчик. В этой статье хочу рассказать про основные механизмы библиотеки grammY и разобрать стартовый набор файлов бота, обработку ошибок, виды обработчиков событий, контекст обновлений, работу с разными видами клавиатур и м...

CPU планировщики в Linux В статье будет рассказано про основные алгоритмы, которые ядро Linux использует для планирования задач, готовых к выполнению. Как влияет приоритет задач и указанная для неё политика на то, как она будет получать процессорное время и сколько. Читать далее

Эй конвертер, не шипи! Строптивые преобразователи платы для E-Ink экранов (Ч2) Приветствую вас, друзья! Продолжаем разработку системы питания универсальной платы для E-Ink экранов. В этой части займёмся запуском и отладкой прототипа, «почувствуем вкус» ферритовых бусин, взорвём полсхемы. Поработаем с обратной связью: узнаем простой способ испытания ус...

Опыт внедрения компонентной разработки Привет! Меня зовут Александр Омельяненко, я работаю тимлидом Flutter-команды в AGIMA. Расскажу, как и почему на одном из наших проектов мы внедрили компонентный подход к разработке и какие плоды нам это дало. В статье покажу основные плюсы и минусы нашего решения. А еще затр...

“Какого кабеля?” Тестируем несколько проводов для зарядки смартфона/планшета Вендоры говорят, что нужно использовать только фирменный кабель и зарядку. Так ли это? Мы провели небольшой тест, чтобы проверить, как работают разные кабели…и убедились в том, что они правы. Но правы не во всем! Под катом — результаты тестов  недорогих кабелей, которые...

Метрики Эффективности Команд. Data driven подход к улучшению эффективности команд и бизнес результатов Как понять эффективность команд? Как узнать можем ли мы перформить лучше и экономить ресурсы? Многие поднимают эти вопросы в компаниях.Последние несколько лет я активно занимаюсь вопросом внедрения метрик эффективности в компании и команды и с многими компаниями мы прошли бо...

[Перевод] В нас нет ничего особенного Споры вокруг традиционной и программной инженерии сводятся, как правило, к обсуждению различий между ними. Речь в этой статье пойдет вовсе не о том, что делает инженера инженером. Сам подход к объяснению понятия «инженерия», часто работает на маргинализацию сферы разработки ...

Может ли мобильный-разработчик стать CTO? Да, может. На этом статью можно было бы закончить. Спасибо, что дочитали до конца, приходите поделиться своим опытом в комментариях. Если серьёзно, карьера мобильного разработчика, который хочет вырасти в большого руководителя, может складываться по-разному. Например, мой пу...

Astra Linux Embedded – мифы о продукте и вопросы о тонкостях его лицензирования Больше года прошло с момента старта операционной системы для устройств фиксированного функционала Astra Linux Embedded (подробнее про этот продукт мы писали ранее), и за это время родилось изрядное количество "мифов" вокруг этого варианта лицензирования. В живом общении и в ...

Как круто выглядеть на камеру: советы Стива Джобса, Илона Маска и Билли Айлиш В жизни понятие “круто” для всех разное. И чтобы выглядеть в кадре круто нужно понимать, что и кому вы хотите сказать. В статье написали, как выглядеть как Гребенюк и Тони Роббинс, как не превратиться в летающую голову и почему Стив Джобс выглядит божественно. С примерами, и...

Microk8s, еще один легковесный K8s В современном мире разработки и развертывания приложений, контейнеризация стала ключевым элементом для обеспечения масштабируемости, гибкости и надежности. В этом контексте технология Kubernetes, как ведущая платформа оркестрации контейнеров, становится неотъемлемым инструме...

VBA макросы. От бессмыслицы к осмысленному. Интерфейс В первой части, через боль и страдания, мы написала ядро – основную логику макроса.Сегодня поработаем над пользовательским интерфейсом. Читать далее

Простейший пример kafka + golang В данной статье представлен простой способ реализации микросервисной архитектуры с использованием Kafka, Golang и Docker. Читать далее

9 сервисов для доставки товаров в Россию в 2023 году. Разбираю риски Сейчас сервисов, которые привозят товары в Россию – как грибов после дождя. Среди них много мошенников. Я сам дважды натыкался.За полтора года я поработал с 12 мейлфорвардерами – сервисами по доставке товаров из стран Европы, США, Турции и ОАЭ. Более менее приличные описал н...

Препарируем Wazuh. Часть 1: Базовая установка Тема SIEM решений с открытым исходным кодом постоянно проявляется на просторах сети. Одних интересуют SIEM системы как таковые, и хочется разобраться в решениях данного класса, но при этом не хочется связываться с тяжелыми и запредельно дорогими коммерческими SIEM. Другие не...

Аналитик за 4 месяца в Автомаконе: почему и зачем? как? где? когда? сколько? Всем привет!Меня зовут Белоусова Александра, я развиваю направление по обучению и стажировкам аналитиков в «Автомакон». Уже полгода в нашей компании проходит отбор и обучение стажеров на системных аналитиков (с сильным «налетом» бизнес-аналитика)! В этой статье расскажу о то...

Разгоняем Ignite в облачной инфраструктуре. Часть 2 Привет! С вами Дмитрий Пшевский и Семён Попов, технические лидеры юнита Data в Сбере. Это вторая часть нашего материала о производительности сервисов при работе с Ignite. В первой части мы рассказали, как перешли от монолита к микросервисной архитектуре, попробовали поработ...

[Перевод] Непрерывность функционирования систем жизнедеятельности: Совокупность циклов обратной связи Наблюдая за программными системами и процессами жизнедеятельности с точки зрения непрерывности функционирования систем, я намерен углубить свое понимание жизни как системы в этой статье.В первой половине исследования я расскажу вам о том, как разработчики программного обеспе...

Алгоритмические собеседования нужны Это ответ на статью, что алгоритмические собеседования не нужны. Простите за кликбейтный заголовок, но он такой и в статье, на которую я отвечаю.Сразу скажу, что моя статья относится лишь к условному ФААНГу. Многие аргументы из этой статьи теряют значимость в других случаях:...

K8sGPT: Революция в управлении кластерами Kubernetes Стремительно растущая конфигурация K8s с современными трендовыми технологиями AI продолжает видоизменять трансформацию способов управления инфраструктурой и приложениями. В этой статье мы более детально обратимся к платформе K8sGPT, которая занимает центральное место в перев...

Разработали систему, которая продумывает маршруты пациентов и сокращает очереди. Вместо «Кто последний?» — QR-код Умная электронная очередь сама строит маршруты для пациентов, чтобы они как можно быстрее проходили нужных специалистов. В итоге медцентр принимает больше клиентов и увеличивает прибыль, а пациенты не стоят в очередях. Рассказываю, как работает эта система. Читать далее

Современный способ организации зависимостей в Android. Version catalog и Gradle convention plugin Я — Денис, Middle Android-разработчик в «Лайв Тайпинге». В этой статье я расскажу о современном подходе организации зависимостей в Android. Вы узнаете как использовать version catalog и convention plugin в вашем проекте. Читать далее

Релиз RetroSpriteEditor 0.2.8 [open source] Добрый день дорогие разработчики для NES (У нас же была Денди). Я занялся электроникой и пока не освоил нужных знаний, решил пописать на ассемблере для NES какие-нибудь игры и погонять байты туда-сюда. Я обнаружил, что для Linux нет нормального редактора и поэтому я написал...

Начинающим разработчикам: как оформлять резюме и проходить интервью — мой опыт Привет! Я Кирилл, фронтенд-разработчик в «Северстали» и выпускник курсов «Веб-разработчик» и «React-разработчик». Последние три года я проходил много собеседований, делал пометки о вопросах и задачах, чтобы поработать над ошибками. Сейчас я собеседую других людей и вижу, что...

Организуем видеонаблюдение за дачным участком: лучшие готовые комплекты Видеонаблюдение за дачным участком помогает обеспечить безопасность имущества, предотвратить кражи и вторжение на территорию. Оно также позволяет в реальном времени отслеживать ситуацию, что особенно актуально во время отсутствия владельца. Редакция ZOOM.CNews подобрала гото...

Библиотека EremexControls.NET для Avalonia UI — Обновление март-апрель 2024 В предыдущей статье мы рассказали о нашей первой версии библиотеки UI контролов для создания мультиплатформенных приложений под Avalonia UI. С тех пор прошло достаточно времени, в течение которого мы продолжали работать над новой версией Delta Design и расширением линейки ко...

Создаем VR офис с Termidesk и Oculus В поисках лучшей конфигурации для работы я решил попробовать VR Oculus Quest 3. Статья будет построена вокруг моего опыта по настройке VR среды для работы. Я расскажу вам о мониторах с изменяемой диагональю, боли в глазах и контроле обстановки вокруг. Читать далее

Что такое GraphQL В этой статье мы узнаем, что такое GraphQL и сравним его с REST API, проведём аналогии и посмотрим на главные различия. Ну а также, естественно, посмотрим, как работает GraphQL и какие у него возможности. Читать далее

Чек-лист для улучшения презентации Недавно наши ребята выступали на конференции, к которой нужно было подготовить красивую презентацию. Мы решили поделиться советами, как собрать весь материал воедино и красиво его оформить, чтобы зрителю было проще воспринимать информацию и слушать самого спикера. Статья буд...

«Клиентов нужно не искать, а создавать»: погружение в Telegram API через TDLib Сперва я рассказывал простые вещи о Telegram Bot API и делал интересных ботов — виртуальную подругу и друга для заказа шавермы. Затем коснулся тестовых серверов и юзерботов. И наконец, пришла пора заглянуть глубже — узнать, как сделать свой клиент для Telegram. Что такое TL...

Передача контекста и знаний в IT команде Всем привет и добро пожаловать! Данная статья не является научной и не относится к разряду технических, она больше про коммуникации и командные процессы в IT. Это попытка систематизировать реальные практики по передаче контекста и знаний в ...

Подбираем параметры сессии в Apache Spark, чтобы не стоять в очереди Бывало у вас так, что некоторые аналитики запрашивают побольше вычислительных ядер и оперативной памяти для своих Jupyter-ноутбуков, а у вас в это время ничего не работает? У меня бывало, ведь недостаточно уметь разрабатывать код на Spark — еще нужно уметь его настраива...

Работа над доступностью: с чего начать, куда копать, как оценить прогресс Допустим, вы уже прониклись важностью обеспечения доступности ваших сервисов, закатали рукава и готовы взяться за работу. С чего же начать? Сделать методички для дизайнеров? Протестировать свои продукты на пользователях с нарушениями зрения? Отправить всех разработчиков чита...

Как заменить фотостоки на нейронки в коммерческих проектах: личный опыт и промпты Зачем нужны фотостоки, если нейросети готовы производить бесконечное количество нужных вам изображений? Расскажу, как мы получили несколько несколько сотен фотореалистичных изображений людей и пакет иконок для коммерческого сайта с помощью нейронок, потратив ~50 часов дизайн...

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

Особенности и проблемы mock-сервера Swordfish API Emulator Эта статья — продолжение истории про разработку Ansible-модулей для взаимодействий с системами хранения данных (СХД) через API, которое удовлетворяет спецификации Swordfish. Эти модули в перспективе облегчат управление парком СХД от разных производителей.Чтобы тестирова...

Делаем HMI-панель из планшета для системы автоматизации на контроллере Wiren Board Система автоматизации обычно работает автономно без участия пользователя, но единая точка контроля и управления системой всё равно нужна: вмешаться в работу автоматических алгоритмов, внести изменения в параметры или просто проверить, что система работает верно.В комплекте с...

[Перевод] ИИ «ассистент учёного» поможет автоматизировать научные открытия Неорганическая интеллектуальная система впервые разработала, спланировала и провела химический эксперимент, сообщают исследователи Университета Карнеги-Меллон в выпуске журнала Nature от 21 декабря.«Мы ожидаем, что системы интеллектуальных агентов для автономных научных эксп...

Другой способ понять, как работает async/await в C# Про закулисье async/await написано предостаточно. Как правило, авторы декомпилируют IL-код, смотрят на IAsyncStateMachine и объясняют, вот дескать какое преобразование случилось с нашим исходным кодом. Из бесконечно-длинной прошлогодней статьи Стивена Тауба можно узнать мель...

Как запороть фишинг: советы пентестерам Добрый день, уважаемые коллеги. Меня зовут Семьянов Дмитрий и я специалист по тестированию на проникновение в группе компаний Innostage. Мы в команде регулярно проводим фишинг в рамках повышения киберустойчивости. За многолетний опыт мы набили много шишек и с радостью дадим ...

Метаморфозы сознания. Про ревью и комментарии в технической документации Привет! Меня зовут Дмитрий Миронюк, я старший технический писатель в компании Bercut. До этого работал системным администратором, специалистом внедрения и поддержки, программировал IP-телефонию, успел поработать тимлидом. Но как в итоге стал техническим писателем расскажу в ...

Kotlin под капотом: inline функции Многие разработчики не понимают в чем профит от использования inline функций и в каких случаях их нужно использовать. Для чего нужен crossinline и как работает reified. Разбираемся как это работает на уровне байткода, в котором хорошо видно всю суть inline функций kotlin. Чи...

Кажется, дождь собирается. Пишем Vue-приложение для прогноза погоды В статье рассмотрим, как сделать простое приложение погоды без дизайн-макета‎. Поработаем с HTML, CSS, JavaScript, Vue, Vite, подключением API, а также развернем проект на облачном сервере. Подробности под катом! Читать дальше →

[Перевод] Архитектурные ката: отсекаем всё лишнее в Agile Один из самых естественных треков развития для программиста – стремиться стать программным архитектором. Проектирование систем – непростое дело, а для того, чтобы построить сложную систему, нужно как быть экспертом-технарём, так и обладать опытом в предметной области. На н...

Точечный обход блокировок по доменам на роутере с OpenWrt Статья о том, как настроить точечный обход блокировок по нужным доменам на роутере с OpenWrt. На мой взгляд, это самый удобный способ, который можно реализовать сейчас.Я предоставляю уже готовый конфиг с самыми востребованными доменами, который можно дополнять.Настроить роут...

Туннелирование трафика через RDP-соединение Всем привет, в этой статье пойдет речь о способе туннелирования трафика через RDP-соединение. Такой способ может подойти для тех случаев, когда мы нашли машину с доступом в новые сегменты сети, к которой есть возможность подключиться по RDP, но мы не можем подключиться к сер...

Как сэкономить миллионы рублей, или перевод документации нейродвижками Всем привет!Меня зовут Александр Денисов. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC).В этой статье я расскажу о том, как у нас был автоматизирован процесс перевода документации с помощью нейродвиж...

Побит новый рекорд емкости HDD. 30 ТБ и 400 градусов Цельсия внутри Многие задаются вопросом, как хранить данные дома или на работе. Надо же не только установить систему на жесткий диск, но еще куда-то сложить несколько сезонов любимого сериала, фотографии друзей и родных, видео с котиками, да и для игр тоже нужно много места. А если вы рабо...

[Перевод] Common Table Expressions Common Table Expressions (CTE) или обобщенное табличное выражение, впервые появилось в версии SQL Server 2005, и это простой способ разбить сложный запрос T-SQL на несколько запросов, что придаёт больше гибкости и управляемости. CTE во многом очень похожи на представлен...

Книга «Linux для сетевых инженеров» Привет, Хаброжители! Операционная система Linux продолжает завоевывать популярность, и все больше сетевых служб разворачивается на ее основе из соображений стоимости и гибкости. Книга даст исчерпывающее представление о том, как устроена работа с сетью в Linux. В начале опи...

Универсальные типы в python Универсальные типы в python являются незаменимым инструментом, который позволяет выявлять множество ошибок на моменте написания кода, а также делает код чище и элегантнее.Меня зовут Саша, и в своей работе часто сталкиваюсь с ситуациями, в которых нужно создавать классы, рабо...

Как подружить JUnit 5 и Robolectric? Задавались ли вы вопросом, почему Robolectric не работает JUnit 5? В этой статье расскажу, как подружить Robolectric и JUnit 5 и как мы смогли это сделать в команде. Вы узнаете, как запустить JUnit 4 тесты при совместном использовании с JUnit Jupiter с помощью тестовог...

Агент по анонимности: Альтернативные фронтенды сайтам Всем привет! Наверняка вы заинтересованы в сохранении собственной анонимности, обхода цензуры и сторонники конфиденциальной работы в сети.Существуют множество методов обхода блокировок и обеспечения анонимности - VPN, прокси-серверы и другие инструменты, но сегодня я расскаж...

Ивент шторминг (Event Storming) при работе над игровыми проектами Ивент шторминг (Event Storming) — это отличный способ разложить продукт по полочкам, понять, как он работает (или должен работать), а также донести это до всех участников команды, чтобы картинка в разных головах была одинаковой (что сильно упростить разработку и поможет избе...

Сколько нужно ядер cpu, чтобы выдержать 30k+ rps? Меня зовут Вадим Ивахин, я техлид в Vi.Tech — это IT-дочка ВсеИнструменты.ру. Я и мои коллеги трудимся над большим количеством проектов и используем в своей работе различные инструменты, в том числе MongoDB. В этой статье я не стану рассказывать о том, что такое MongoDB. Хоч...

[recovery mode] Легко архивируем 1С на холодное хранилище SELECTEL v2 в 2024 году В прошлой версии не было выработано однозначно хорошего способа архивации на SELECTEL. Если не ограничивать хранилища, то они могли приводить к большим расходам, да и архивация через FTP показала себя не очень надежной, часто сбоила.Поэтому проведу работу над ...

Играем в ReactOS Всем привет, дорогие друзья. В этой статье я хочу поделиться результатами тестов игр в ReactOS. Сразу отмечу, раз ReactOS, на данный момент стремится к совместимости с Windows Server 2003 (серверная версия Windows XP), то и игры, соответственно нужно тестировать той эпохи. Т...

Инсталляция и первичная настройка Sangfor Cloud Platform. Часть 1 В предыдущих статьях мы обсудили Sangfor HCl (Hyper Converged Infrastructure). Рассмотрели установку решения и нюансы типа подключения СХД и настройки aSAN. Сегодня мы расскажем об облачном портале SCP (Sangfor Cloud Platform) — решении для управления ресурсами на базе ...

Как показать номер версии на экране загру… Привет, Хабр! Меня зовут Сергей, и я 3 года работаю Android/iOS разработчиком. Написал с нуля приложение для фитнес-клубов (Google Play/App Store — если интересно, код под NDA, его не могу показать) и дорабатываю малоизвестный банк. За это время накопилось много интерес...

Как выстроить удобные процессы в работе с монорепой Как настроить общее рабочее пространство для команды без запуска сборки в watch-режиме и ожидания старта dev-сервера, чтобы подхватить изменения? Для этого нужно удобным для всех образом настроить переиспользование кода внутри монорепы.Нам поможет Андрей Кочеров, старший раз...

Call Activity vs SubProcess: В чём отличие? Приветствую моих читателей! Меня зовут Екатерина. Ранее 3.5 года я администрировала bpm-систему, сейчас вот уже более двух лет я работаю системным аналитиком и развиваю нашу собственную bpm-систему. В данной статье хочу рассказать о дилемме, с которой столкнул...

zVirt Hosted Engine: практика развертывания в картинках Привет, друзья! С этой статьи компания Orion soft начинает вести свой блог на Хабре. Сегодня я расскажу о том, как происходит развертывание системы виртуализации zVirt. Текст предназначен для тех, кто еще ни разу не работал с нашим гипервизором, но в тайне (или явно) мечтает...

Как сделать себе крутой Readme профиля на GitHub? Еще летом 2020 года GiHub разрешили создавать пользовательские README. И хотя платформа предлагает готовые шаблоны, о какой кастомизации может идти речь, если у всех будут одинаковые профили? За три года сообщество напридумывало много способов, чтобы выделиться. О том, ...

Нотификации через RSocket в Альфа-Онлайн: от концепции до запуска в продакшн Однажды мы решали задачу разработки системы нотификаций для Альфа-Онлайн — мобильного банка в вебе. Нам было необходимо разработать инструмент по отправке сообщений (нотификаций) со стороны сервера в браузер в любой момент времени, пока клиент онлайн. На стороне Альфа-Онлайн...

Как выжать максимум из Confluence. Глава вторая Привет, Хабр! На связи ведущий аналитик Ульяна. В первой главе я рассказала, что такое Confluence, зачем его используют и как работать с макросами. Во второй главе поговорим про шаблоны и метки, которые помогут организовать процессные и проектные рутины, например в...

Разбираем 5 способов ускорить сайт: от простого к сложному Низкая скорость загрузки — это критично. По данным исследования Unbounce, долгое ожидание негативно влияет на пользователей: 45,4% из них с меньшей вероятностью совершат целевое действие, а 11,9% — вообще покинут сайт. Давайте обсудим несколько способов, которые помогут...

Как рассчитать CLTV с помощью машинного обучения и как нам в этом помогает Feature Store Условия задачи: дано число клиентов банка N, число банковских продуктов М, горизонт времени прогноза Т. Нужно посчитать ( Pij ).Привет, меня зовут Игорь Дойников, в Альфе я CDS — Chief Data Scientist в Розничном Бизнесе. Моя команда строит модели машинного обучения для розни...

Магия вне Хогвартса: как повышать ИБ-грамотность сотрудников Сумрачная картинка: большое помещение, мало света. Стол и рядом стул, на котором сидит человек. Он работает за ноутбуком. Чувствую его усталость: он сегодня уже долго работает. Его что-то отвлекает: письмо. Электронное письмо. Он нажимает на ссылку, но ничего не появляется н...

Готовим Telegram Mini App без туннеля и с Hot Module Reload на React, TypeScript В этой статье разберем как собрать комфортную девелопмент среду для разработки Telegram Mini App. Под комфортом я понимаю ситуацию когда тебе не нужно выгружать свое приложение в облако, чтобы увидеть результат работы в телеге, или запускать туннель типа ngrock, который посл...

Карьерный путь: Android мобилка, фронт или бэкенд? Я поработал и с мобилкой и бекэндом и фронтендом и теперь задумался, а куда же двигаться дальше... Если кого-то посещают похожие мысли или просто интересно, прошу под кат. Читать далее

Как работать с Kafka-consumer в Spring-проектах Эта статья сборник небольших рекомендаций как работать с Kafka-consumer в Spring основанных на личном опыте. Читать далее

Инфраструктурный пентест по шагам: боковое перемещение и повышение привилегий в сети В предыдущих статьях мы изучили подходы к разведке и анализу целей, а также ключевые аспекты этапа сканирования. Теперь пришло время разобраться в анализе парольных политик, ACL и DNS, найти способы бокового перемещения и провести обзор основных актуальных техник повышения п...

RecTools – OpenSource библиотека для рекомендательных систем Если вы когда-либо работали с рекомендательными системами, то знаете, что все необходимые и самые часто используемые инструменты разбросаны по разным библиотекам. Более того, каждая из таких библиотек имеет много уникальных особенностей, к которым нужно приноровиться (наприм...

PaaS два года спустя. Обзор инструментов и какие задачи они решают Друзья, привет! Если у вас так же много разработчиков как у нас, то и им, возможно,  стало тесно стоять в очереди на deploy в монолите. А значит, вы можете решить перейти на микросервисную архитектуру и дать каждому игроку свой мяч каждой команде свой микросервис. ...

Полигон для творчества за 1500 р. Ч1: Позовите Кряка Приветствую вас, друзья! Не знаю как вам, а мне нравится разбирать всякие штучки, узнавать, как они работают, и применять их в своих проектах. По ходу дела начинается настоящее увлекательнейшее расследование, технический детектив. На этот раз меня заинтересовала плата с р...

Распределённые системы на службе ФССП России. Часть 2. Суперсервис «Цифровое исполнительное производство» Привет, Хабр! Меня зовут Дима. Я работаю в отделе разработки систем межведомственного взаимодействия РЕД СОФТ. Представляю вам вторую статью про импортозамещение в АИС ФССП России, в которой я расскажу о проектировании сложных территориально распределённых информационных сис...

Пуш-уведомления RuStore Привет! Меня зовут Артем Ковардин, я работаю в VK и мы с командой разрабатываем Push Service RuStore и SDK для него. Если вы занимаетесь разработкой мобильных приложений и хотели бы иметь канал коммуникации с пользователями или же вам просто интересно то, как работают разраб...

Airflow в Kubernetes. Часть 1 Приветствую!На пути инженера данных часто встречаются задачи связанные с DevOps. Одна из таких - развернуть Airflow в Kubernetes кластере. Если до этого похожего опыта работы не было, то эта задача может показаться нетривиальной. Конечно, можно выполнить несколько команд из ...

Kotlin под капотом: как избавится от рекурсии Различные способы оптимизации рекурсии и какой эффект они дают в плане производительности. Является ли рекурсия абсолютным злом и всегда ли нужно ее оптимизировать. Читать далее

Саундбар с беспроводным сабвуфером Edifier B700: эффектный звук без лишних проблем В плане удобства эксплуатации и универсальности Edifier B700 показал себя отлично: самые нужные форматы поддерживаются, управление организовано удобно, индикация присутствует в достаточном объеме, в комплекте поставки есть всё необходимое... Бери, подключай и радуйся. Что же...

Persistent-request библиотека для надежных запросов Всем привет!В этой статье расскажу, как решил написать библиотеку https://packagist.org/packages/xman12/persistent-request и что там внутри.Как и любая библиотека, эта решает свои задачи, а именно гарантированное выполнение запроса и последующую обработку. Я находил, как мин...

Умный мясокомбинат: что можно сделать с инженерными системами? Современные производства за годы эксплуатации «обросли» большим количеством инженерных систем разных производителей.Заставить их работать вместе сложно, еще сложнее — обслуживать «зоопарк» техники.В статье мы рассмотрим несколько решений, которые улучшили работу инженерных с...

Как настроить сбор статистики и автоматическое отключение пользователей WireGuard в ispmanager с помощью Python и API Привет! Меня зовут Вячеслав, и я руководитель отдела маркетинга. Я поднял VPN-туннель по подписке на базе ispmanager. Однако мне этого было мало: нужно было, чтобы по окончании подписки туннель автоматически отключался и статистика по каждому пользователю собиралась ежедневн...

Как создать хороший FAQ Привет, Хабр! Я Евгения Береснева, технический писатель в X5 Tech, и я считаю, что классный раздел вопрос-ответов нужен любому продукту. В статье как раз расскажу о том, как его создать.  Читать далее

Что такое «паралич» сети, и как его избежать? Паралич сети - это явление, когда глубокие слои не обучаются. Это происходит из-за затухания градиента при обратном распространении ошибки. Затухание градиента может возникнуть из-за большой глубины сети или больших выходных значений.Цель статьи - объяснить проблему, причины...

Куда девать 300 багов: автоматизация бэклога и RICE для багов POV: Вы только что начали работать над новым проектом и встретились с небольшой проблемой — в бэклоге багов обнаружилось 300+ открытых тасок. Первая реакция — недоумение, отчаяние и боль от увиденного. «Ну ничего, – думаете вы, – это же как раз то, зачем я нужен этой компани...

Linux From Scratch на Zynq UltraScale+ MPSoC В данной статье я постараюсь описать процесс создания кастомного образа Linux на Zynq UltraScale+ MPSoCс. Каждый необходимый компонент будет собран отдельно с использованием соответствующих утилит. Статья разбита на разделы, которые шаг за шагом знакомят вас с процессом сбор...

[recovery mode] Простой production-ready генератор студийных фото продуктов В данной статье мы рассмотрим простой пример готового к запуску в продакшн приложения с генеративным пайплайном. Расчет идет на возможность простого масштабирования и распределения вычислений на GPU. Читать далее

Автосборка Fsbl, U-Boot, linux kernel и установка debian для amd64 для Zynq Ultrascale zcu106 В данной статье описывается способ создания минималистичного образа sd карты c debian amd64 на примере отладочной платы с zynq ultrascale zcu106. Данный способ можно использовать для создания загрузочных образов других устройств с соответствующими изменениями. Битстрим, ядро...

Изменить цвета и кнопки сервиса — и не сломать дизайн-систему Меня зовут Алексей Афонин, я старший дизайнер продукта в Yandex Cloud. В прошлом году нам понадобилось полностью изменить внешний вид нашего сервиса для бизнес‑аналитики DataLens перед его выходом в опенсорс. Разработчики и дизайнеры интерфейсов часто ста...

Как устроен онбординг в больших компаниях: личный опыт Привет! Меня зовут Маша Сафронова, и я уже почти 3 месяца работаю младшим продуктовым дизайнером в Lamoda Tech. За последний год я успела пройти стажировку и поработать в двух других крупных IT-компаниях, а еще раньше я переучилась и пришла в дизайн из другой профессии. ...

Кому и зачем нужны разработчики мобильных приложений в 1С Платформа 1C:Enterprise — самый простой способ перейти в сферу мобильной разработки. Научиться писать приложения на 1С проще, чем освоить Swift, Java или Kotlin. Обучение займёт всего пару месяцев. При этом специалист с такими знаниями всегда будет востребован на рынке благо...

realme 12 Pro — продвинутые камеры и приятная оболочка В середине марта ко мне в руки попал смартфон realme 12 Pro. Несколько недель я изучал его возможности, а сейчас готов поделиться обзором, своим опытом использования и мнением. В статье оцениваем дизайн, производительность и качество снимков на камеры смартфона. Читать далее

Подводные камни при работе с исполнителем во время аттестации объекта информатизации Привет, Хабр! А не пора ли поговорить о важной и нужной ИБ-процедуре: аттестации информационных систем? Хотя бы в общих чертах, чтобы разобраться.В этой статье расскажем:1. На что стоит обращать внимание при выборе органа по аттестации;2. Какие полномочия имеет орган по атте...

[Перевод] Ликбез по корутинам Kotlin Корутины — это паттерн проектирования, предназначенный для написания асинхронных программ, способных выполнять нескольких задач одновременно.В асинхронных программах несколько задач выполняются параллельно в отдельных потоках, не дожидаясь завершения друг-друга. Потоки — рес...

Расчет количества газа необходимого для выполнения транзакции в Ethereum Привет, Хабр! Продолжаю серию статей о газе в Ethereum. ​​В этой статье подробно разберем составляющие параметра gasUsed , без которого невозможно подсчитать стоимость транзакции. Будем разбирать формулы из "желтой бумаги" и копаться в коде клиента "Geth". Это даст основу дл...

DebugMenu и визуальная иерархия элементов интерфейса В начале квартала, в Альфе, мы выбираем себе технические таски — задачи, направленные на техническое развитие проекта, а не на продуктовую составляющую. При выборе задачи хочется, чтобы она соответствовала нескольким условиям: • решает реальные проблемы нашей команды, у...

Проактивность сотрудника: что это за качество и как его развить Иногда кажется, что вы с коллегами в команде работаете одинаково, но как будто отношение руководства к вам проявляется по-разному. Что это — корпоративная несправедливость или вселенский заговор? Возможно, ни то, ни другое. Зачастую «более ценный коллега» для компании — чело...

I2C датчик INA219 + Python + Repka Pi: измеряем ток, напряжение и мощность во встраиваемых системах управления Когда вы создаете проект промышленной установки, робота, дистанционно управляемой модели ровера или аналогичный проект с микрокомпьютером, встает задача контроля состояния систем электропитания. Вам нужно проверять напряжение на аккумуляторах, потребляемый ток и мощность....

Инструкция по настройке RAG-системы для тех поддержки клиентов Retrieval Augmented generation - генерация ответа с использованием результатов поиска. RAG-архитектура - это подход к созданию приложений, в которых большая языковая модель без дополнительного обучения отвечает на вопросы с использованием информации из внутренней базы знаний...

Зачем учить алгоритмы? Хочу поделиться своим взглядом на вопрос, зачем стоит или не стоит прокачивать знание алгоритмов. Попробую взвешенно посмотреть на алгоритмическую задачу, как способ проверки нужных в практической работе навыков. Читать далее

«Будет просто», — говорили они. Через тернии к ЭДО Вначале кажется, что электронный документооборот — это очень просто. Но с ростом компании и развитием сети контрагентов кратно увеличивается объём ЭДО. Здесь и выясняется, что идеально работавшие методы превращаются в головную боль. Меня зовут Юлия Ворожбицкая, старший анали...

Как управлять распределённой системой, не привлекая внимания санитаров Привет! Меня зовут Александр Попов, я tech lead команды маркетплейса 05.ru. Сейчас мы занимаемся бэком маркетплейса и некоторыми другими сервисами на рынке Дагестана. При разработке серверной части маркетплейса мы сразу решили строить её в распределённой архитектуре. Эт...

Мобильные деньги в Африке столкнулись с чередой сбоев Рынку как никогда нужна здоровая конкуренция.

Как я закрыл магазин в провинции, который кормил семью 28 лет. Бизнес из 90-ых прожил до 2022 По образованию я инженер-механик, долго работал в геологоразведке, а в 1994 году открыл 2 магазина с посудой и сувениркой за Полярным кругом. Проработал 28 лет, продал вместе с товаром и решил вспомнить, как это было. Ожидание: в маленьких городах дефицит товаров, плюс жируе...

Что мы делаем, когда у нас заказывают аналитику без нормальных формулировок «Дайте нам аналитику, — просит бизнес айтишников, — правда, мы глубоко в это погружаться не хотим, чётко сформулировать требования не можем и расчётам BI не очень-то доверяем». Сюр? Сюр. Но встречается на каждом шагу. Вопрос решается с помощью Self-service, который даёт в...

[Перевод] Работа со временем и датой в C# с применением библиотеки Humanizer Цель этой статьи — показать вам, как использовать Humanizer, чтобы вывести работу со временем и датой в ваших C#-проектах на новый уровень. Я расскажу о том, как преобразовать объекты DateTime и TimeSpan в удобный для восприятия человеком вид, как настраивать параметры гуман...

Sub-GHz во Flipper Zero и бесконечное множество внешних модулей Большинство владельцев Flipper Zero хоть иногда, но пользуются приложением Sub-GHz, чтобы взаимодействовать с различными приборами, работающими на частотах ±433 MHz: открыть шлагбаум или ворота, управлять устройствами умного дома или даже использовать флиппер для теста “пища...

Как мы заинжектили кнопку на Behance Дело было год назад, не помню что я там забыл, но мне определенно хотелось скачать какую‑то картинку с behance.net, но как вы знаете — опции скачать там нет. Зная, как работает веб — я без проблем забрал нужное изображение на...

Что нужно подбирать в комплектующих компьютера, чтобы он долго не устарел Самое главное ограничение любой компьютерной сборки - это бюджет. Но на каких комплектующих можно сэкономить, а на каких не стоит?

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

Обзор популярных файловых систем в системах виртуализации. Часть 1: ZFS Количество файловых систем во всем мире определяется количеством способов организации и хранения файлов на различных устройствах. Разработчики Microsoft, Apple, Linux работают над своими файловыми системами. Они различаются между собой скоростью работы, масштабируемостью, на...

[Перевод] Xv6: учебная Unix-подобная ОС. Глава 2. Устройство операционной системы Операционная система выполняет несколько процессов одновременно. ОС распределяет время работы с ресурсами компьютера между процессами. ОС даст каждому процессу шанс на выполнение, даже если число процессов больше числа процессоров.ОС изолирует процессы друг от друга так, что...

Аутентификация, авторизация пользователей и единый вход (SSO) с использованием Django В этой статье исследую технологию SSO. Начинаю с разбора концепций аутентификации и авторизации. Рассматриваю как они работаю в контексте Django. После прохожу путь от описания как работает SSO простыми словами, до разбора протоколов используемых в SSO.В итоге делаю реализац...

Кратко про протоколы взаимодействия в микроконтроллерах: SPI, IDC, UART, CAN Привет, Хабр!Утренний будильник, кофеварка, микроволновка, телевизор, кондиционер – все они оборудованы микроконтроллерами. Микроконтроллеры управляют функциями устройства, обеспечивая пользовательский интерфейс и взаимодействие с другими устройствами. Микрокотроллеры также ...

Опыт автоматизации управления FPGA-стендами для распределенной команды: отказ от готового решения и работа над ошибками В software-разработке с автоматизацией обычно все неплохо: более-менее понятно, как настроить CI и автоматизировать отдельные этапы CI-конвейера. Есть множество готовых решений и практик. Но, когда речь заходит об автоматизации тестирования на «железе», появляется множество ...

Почему нельзя пить горячий тосол из чайника? Чтобы на Хабр не писали чушь, его надо продезинфицировать. Чтобы быстрее продезинфицировать – пожертвовать свободным вечером и написать статью по горячим как вода следам. Как вы уже догадались, речь пойдет о статье «Можно ли пить горячую воду из крана и брать ее, чтобы вскип...

Ручная пила для PHP-монолита Привет! Это третья и заключительная часть истории поиска надёжного способа работы с транзакциями в распределённых системах. В первой части мы поставили задачу, определили критерии оценки и набросали варианты. Во второй части я подробно разобрал решение на Temporal. В этой с...

Как работать с авторами. Практическое пособие Как найти сильных авторов и построить работу с ними без нервов, переработок и лишнего риска. Руководство для редакторов и заказчиков на основе опыта работы с сотнями авторов. Читать далее

Китайцы скупают GeForce RTX 4090 в соседних странах, чтобы перепродавать у себя с большой наценкой Видеокарта GeForce RTX 4090 запрещена для продажи в Китае. И несмотря на то, что там уже вышла специальная версия RTX 4090D, немало пользователей хотят именно обычную модель, что привело к довольно занятной ситуации.  За последнее время продажи RTX 4090 сильно выр...

Секреты тестирования Wiren Board: test-suite и крафтовые стенды Мы продолжаем рассказывать о внутренней кухне Wiren Board. В предыдущей статье мы заставили работать китайский паяльный робот, который выполняет рутинную часть работы монтажников на нашем производстве.Все наши «железки» должны поступать клиентам в рабочем состоянии и служить...

Вы кто такие, я вас не знаю, или Как мы делаем JWT-аутентификацию Привет! Меня зовут Данил, я backend-разработчик в Doubletapp. Почти во всех наших проектах есть пользователи, которые могут войти в систему. А значит, нам почти всегда нужна авторизация. Мы используем авторизацию, построенную на JSON Web Token. Она отлично сочетает в се...

SFC Vue3 Компоненты в Bitrix, с использованием Composition API, без сборщиков, без CDN и NPM пакетов В данной статье будет показана нестандартная реализация компонентов Vue + Bitrix, которую вряд ли кто то видел и использовал.Без NPM, без сборщиков и без костылей. Все "нативными" средствами Читать далее

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

Тенденции в онлайн-опросах: что нового в 2023 году? В этой статье мы погрузимся в последние тренды и инновации в сфере онлайн-опросов, которые набирают обороты в 2023 году. Это не просто обзор новых функций и технологий; это исследование того, как эволюционирует весь процесс сбора и анализа данных, и что это значит для бизнес...

Как не заскучать в 1С-разработке Многие считают 1С особым замкнутым миром. А методы работы в нем — неприменимыми в «нормальном» программировании. Это давно не так. Конечно, у каждого решения есть свои плюсы и минусы. Но я уверен: если вы не любите 1С, то вы просто не умеете его готовить. Меня зовут Вла...

Мониторим работу Windows с помощью Powershell Для эффективной работы любой операционной системы необходимо вести мониторинг ее состояния, для того, чтобы своевременно выявлять проблемы и узкие места в производительности. Еще лучше лучше, когда такой мониторинг ведется в автоматическом режиме, с помощью скриптов.В операц...

Оптимизируем шрифты и ускоряем сайт на 5-12% Описываем способы максимально ускорить загрузку шрифтов на сайте.Развенчиваем мифы и разбираем ошибки. В статье вас ждут полезные онлайн сервисы для ускорения работы. Читать далее

Как получить полезную информацию из своих категориальных признаков? В этой статье я выскажу свою точку зрения о том, что из себя представляют категориальные признаки. Расскажу про способы работы с ними, которыми пользуюсь сам как антифрод-аналитик в Каруне. Читать далее

Обзор актуальных инструментов шифрования в Android Привет, Хабр! Меня зовут Артур Илькаев, я работаю в департаменте экосистемных продуктов, мы разрабатываем VK ID SDK и все что связано с авторизацией и сессиями, в частности — мультиаккаунт.Секретные данные требуют особого внимания при хранении и передаче. Инструмен...

Парсинг веб-сайтов: взгляд изнутри Статья о парсинге веб-сайтов освещает следующие аспекты:• Понятия парсинга и скрапинга; • Законность и этика парсинга; • Парсинг с использованием requests и BeautifulSoup; • Статические страницы; • Динамические страницы; • Работа с API; • Защита от парсеров; • Способы обхода...

Как мы запустили автобиддер для управления рекламными кампаниями в Ozon? Привет! Меня зовут Артём, я руковожу командой эффективности рекламы в Ozon. Наша задача состоит не только в том, чтобы реклама приносила деньги компании, заказы рекламодателям и была релевантной для пользователей, но и в том, чтобы сделать запуск рекламных кампаний удобным и...

Как выбрать первую механическую клавиатуру. Пособие для новичка Попросили меня друзья\коллеги рассказать про первые шаги и выбор механики для работы и жизни. Решил поделиться и с Хабром статьёй о том, как выбрать себе первую механическую клавиатуру.В статье отвечу на вопросы о том, что такое HotSwap board, что за проценты в размерах клав...

[recovery mode] Как нанять работника в ИТ, если он реально нужен в 2024 году Как нанять работника в ИТ, если он реально нужен в 2024 году.Незаменимая статья в помощь моему бывшему руководителю. Которую он не будет читать.И немного в помощь сотруднику, который сейчас решит выйти на рынок. Читать далее

Как избавиться от нестабильных тестов Устали от нестабильных тестов?Автоматизированные тесты часто ведут себя нестабильно. Логичное решение в такой ситуации — немедленно исправить такие тесты или избавиться от них. Но что, если тестов — тысячи, инженеров, которые могут их исправить, не так много, а избавление от...

[recovery mode] 13 грехов продакт-менеджера Чтобы качественно решать проблемы пользователей, продакт-менеджер должен обладать широким набором компетенций: исследования, аналитика, критическое мышление, управление проектами, коммуникации и так далее.Ошибки в работе неизбежны. Но ошибаться не страшно. Страшно не признав...

Простой способ обработки качественных исследований Данная статья может оказаться полезной начинающим менеджерам, аналитикам и дизайнерам. В ней рассказано о подходе, который поможет структурировать и упорядочить информацию, полученную из различных источников, таких как “one to one” встречи, глубинные интервью и другие подобн...

После RSS В свободное время я занимаюсь разработкой сервиса "Awakari", идея которого - фильтрация интересных событий из неограниченного числа различных источников. В этой статье я расскажу о способах извлечения публично доступной информации в интернете за пределами RSS-лент и телеграм...

Даешь магнетрон: микроволновка для советского общепита В предыдущей статье мы подробно рассказали об истории изобретения микроволновки американским инженером Перси Спенсером. Не менее увлекательны были разработки советских ученых.  Читать далее

CPM vs. BI:  о чем не расскажут продавцы Более восьми лет я специализируюсь на внедрении CPM и BI-систем различных вендоров. Несмотря на то, что во многом их функционал пересекается, мне хорошо понятно, какие задачи решаются лучше, а какие решаются только одним из этих двух классов систем.Написать данную статью мен...

Аннотировать или да? Что такое аннотации типов в Python?Читая эту статью надеюсь, что вы знакомы с аннотациями в Python. Но все же в вкратце напомню. Они нужны для того, чтобы придать некой строгости нашему динамически типизированному языку. Читать далее

Применение стационарных умных приёмников звука в составе сетецентрической системы Фомичев В.А., полковник запаса, Крюков В.А., гражданское лицо.Данная статья является продолжением статьи «Устройство умного приёмника звука в составе сетецентрической системы установления координат источника звука » Читать далее

Токены. От появления до продвижения в Active Directory О токенах, используемых в операционных системах семейства Windows слышали многие, ведь они являются важным звеном, участвующим в контексте безопасности всей операционной системы. Данная статья является результатом моих наработок о токенах. В ходе написания данного материала ...

[Перевод] Жизнь могла появиться в первые секунды после Большого взрыва Жизнь обрела свой дом на планете Земле около 4 миллиардов лет назад. Это значительная часть истории Вселенной, насчитывающей 13,77 миллиарда лет. Предположительно, если жизнь возникла здесь, то она могла появиться где угодно. А при достаточно широком определении жизни возмож...

Монады как строительные блоки функционального Java Монада – это структура, которая описывает способы композиции абстракций. Можно представить монаду как контейнер, который может хранить в себе другие значения или операции. В этой статье мы рассмотрим то, как реализуются монады в Java. Читать далее

[Перевод] Ускоряем анализ данных в 170 000 раз с помощью Python В статье «Ускоряем анализ данных в 180 000 раз с помощью Rust» показано, как неоптимизированный код на Python, после переписывания и оптимизации на Rust, ускоряется в 180 000 раз. Автор отмечает: «есть множество способов сделать код на Python быстрее, но смысл этого поста не...

[Перевод] 2. Nix в пилюлях: Установка в вашей системе Вторая статья из цикла Nix в пилюлях. Устанавливаем Nix в нашу систему, разбираемся и профилями и поколениями, и выясняем, что в Nix есть база данных. Читать далее

Виртуальная инфраструктура и облачные сети: как создать единую систему в разных зонах доступности Поскольку все больше корпоративных рабочих нагрузок переносится в облако, компании ищут способ связать облака и распределенные офисы.Задача состоит в том, чтобы безопасно и с минимальной задержкой перемещать данные между частной сетью и облачной инфраструктурой. Сегодня...

Погружаемся в PEB. DLL Spoofing В предыдущей статье мы в первом приближении рассмотрели PEB и разобрались, как подменить аргументы командной строки.Продолжая разбираться с PEB, рассмотрим еще один способ повлиять на исполнение программы, и попробуем подменить вызываемую из DLL функцию. Читать далее

Оптимизация нейронки в Tensorflow? В отличие от Pytorch, где структура данных выстраивается налету после начала обучения нейронки – в TensorFlow граф статичен. В этой статье мы кратко расскажем про некоторые способы ускорения обучения путем изменения графа вычислений: XLA, GraphTransform Tool, квантизация, за...

Формализуем процесс создания нового API в микросервисах на .NET Мы работаем с ИТ-продуктами в сфере логистики и e-commerce. Большинство таких проектов крупные с точки зрения архитектуры – включают в себя множество сервисов, необходимых для исправной работы целостных систем. Поговорим о том, как организовать взаимодействие микросерви...

Кто победил в студенческом хакатоне InnoGlobalHack? Недавно завершился хакатон InnoGlobalHack для студентов 3-4 курсов, организованный VK Education и Университетом Иннополис. Друг с другом соревновались 46 команд из 15 городов, которые пробовали свои силы в решении задач, направленных на увеличение эффективности разработки ПО...

Анимация в браузерах и как с ней работать Многие разработчики умеют создавать красивые и плавные анимации, но далеко не все понимают, как на самом деле они работают и что происходит «под капотом» браузера в момент их отрисовки и запуска. Вместе с тем, работа с анимацией без знания основных нюансов нередко заканчивае...

Cotea: программный контроль исполнения Ansible Привет! Я Давид Бадалян, работаю в Исследовательском центре доверенного искуственного интеллекта ИСП РАН. В статье я хочу поговорить об Ansible – одной из самых популярных систем по автоматизации развёртывания. Стоит запустить Ansible программно, и он становится черным ...

Бьемся с индексацией парных неравенств в планах PostgreSQL Я уже не раз писал, что условия с несколькими неравенствами (<, <=, >=, >) обычно плохо подходят для индексирования "классическим" btree, вызывают "тормоза", и необходимо придумывать различные нетривиальные подходы в PostgreSQL, чтобы добиться хорошей производите...

Продюсеры и консьюмеры с Apache Kafka в Python Салют, Хабр!Apache Kafka - это распределенная платформа потоковой обработки, предназначенная для построения систем обработки данных. Kafka позволяет публиковать, подписываться, хранить и обрабатывать потоки данных в реальном времени. Все это дает нам очень высокую пропускную...

Подкаст «Скрамное IT»: о чем говорят айтишники (и что они недоговаривают) Привет, уважаемые хабровчане!В этой статье мы затронем такие важные темы, как метавселенные, должен ли разработчик окончить вуз, и нужна ли руководителю проекта собственная гадалка? Но давайте по порядку! Читать далее

Команда любого продукта должна уметь работать с пользователями? Меня зовут Виктор Попов, я — технический владелец продукта CI/CD в Samokat.tech. Мы с командой разрабатываем там комплекс CI/CD  инструментов. Это единый продукт, который должен удовлетворить потребности продуктовых команд. Правда, не так просто разобраться, а удовлетво...

Релизный цикл без компромиссов: надежно для клиентов, удобно для разработки При построении релизного цикла приходится балансировать между двумя крайностями. С одной стороны, хочется по максимуму отлавливать баги и дотошно проверять каждый релиз. С другой — быстрее выпускать обновления и приносить клиентам больше пользы. Мы в Mindbox долго ...

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

File upload на React.js шаг за шагом В этой статье напишем компонент для загрузки файлов на сервер, который поддерживает: - Индикатор загрузки - Прерывание отправки - Drag and dropВ нашей конкретной реализации этот компонент будет оберткой и сам не будет отображать файлы, но, я надеюсь, приемы из этой статьи по...

Как я победил хаос умных устройств, или Цифровая трансформация жилого пространства Несколько лет назад я увлекся проектированием системы умного дома и создал для себя удобное пространство, в котором не нужно открывать дверь курьеру или включать настольную лампу для работы. Покажу, что подключил и как работает система. Сразу спойлер: умный дом не зависит от...

16-, 8- и 4-битные форматы чисел с плавающей запятой Уже лет 50, со времён выхода первого издания «Языка программирования Си» Кернигана и Ритчи, известно, что «числа с плавающей запятой» одинарной точности имеют размер 32 бита, а числа двойной точности — 64 бита. Существуют ещё и 80-битные числа расшир...

Кто такой сеньор, как им стать, и что делать дальше Сеньор — это самостоятельная единица, которая не требует дополнительного управления. В него просто кидают задачи, причем в довольно сыром виде с точки зрения требований. Сеньор — тот, кто может придумать решение, реализовать его, проверить, что получилось качественно. Он авт...

[Перевод] Небольшой туториал по полигруппам в Zbrush Полигруппы (Polygroups) в Zbrush представляют из себя способ разделения уже существующей 3D-модели на группы полигонов с целью выполнения над ними различных видов работ. При создании каждой из этих групп полигонов ей назначается свой уникальный цвет, что помогает нам визуаль...

Тестируем отечественную систему виртуализации: zVirt Привет, Хабр!В первой статье цикла, посвященного тестированию отечественных систем виртуализации, я предложил читателям проголосовать за наиболее интересные для них решения. В топ систем попали: Программный комплекс «Звезда», zVirt, VMmanager 6, РЕД Виртуализация, ПК СВ «Бре...

Как Wazuh помог наладить круглосуточный мониторинг и реагирование на ИБ-события Представим ситуацию. Вы хотите выстроить процесс реагирования на ИБ‑инциденты в компании. Для этого нужно вовремя фиксировать атаки на вашу инфраструктуру. Вы решаете собирать логи и мониторить все, до чего можете дотянуться: хосты, межсетевые экраны...

Проектирование БД рекомендательной системы по подходу DB-first В данной статье мы рассмотрим проектирование системы по подходу DB-first и то, какие проблемы он помогает не просто решить, а устранить как явление. Читать далее

Как вообще этот ваш CI CD настроить Привет, Хабр! Хочется рассказать о нашем опыте внедрения CI/CD в компанию. О том, как в целом работать с ним и как это работает у нас.Статья нацелена на новичков конкретно в этой сфере и хотят чуть детальнее стандартной документации настроить деплой, может внедрить у себя, ч...

Германия построит два новых суперкомпьютера, один из которых будет класса Exascale. Оба будут основаны на AMD Instinict MI300A В ближайшие годы Германия получит два новых суперкомпьютера, один из которых предложит производительность свыше 1 ExaFLOPS.  Университет Штутгарта и Hewlett Packard Enterprise объявили о соглашении, в рамках которого в 2025 году будет построен суперкомпьютер Hunte...

Как правильно передавать секреты запускаемым программам? Эта статья о том, как правильно передавать секреты запускаемым программам.Бывает встречаются Unix-системы, на которых некоторые администраторы передают процессам пароли в открытом виде, совершенно не заботясь о том, что их видят все пользователи данной системы. Если вы смог...

Пет-проект: путь от «простого получения опыта» до «продукта, способного приносить пользу IT сообществу» В мире современных технологий и инноваций роль аналитика становится все более важной и востребованной. Однако, каким образом можно развивать свои аналитические навыки и экспертизу, чтобы выделиться среди конкурентов и создать что-то уникальное? Один из способов – ведение пет...

Разбор монады ContT, или как написать продвинутый goto, генераторы и файберы на хаскеле В этой статье я разберу монаду ContT, и покажу как вернуть return и другие control-flow операторы из императивных языков программирования, которых мне так нехватало, когда я начинал изучать хаскель. Читать далее

«Триколор» покажет турецкий сериал «Идеальное совпадение» Пынар и Керем много работают, им не до женитьбы, но родители с этим категорически не согласны! Может ли свидание, организованное ими, закончиться чем-то хорошим? Ромком о столкновении двух поколений покажут на телеканале «Лавстори».

[Перевод] Как сделать детальное макро-фото печатной платы Как разглядеть мельчайшие детали на печатной плате? Можно попробовать отсканировать её или сфотографировать. Но детализации всё равно бывает недостаточно. Чтобы сделать приличный макро-снимок, мало просто иметь хорошую зеркалку (или беззеркалку). Нужен ещё и макрообъектив, д...

Шифрование в Kubernetes: основы Многие приложения работающие в Kubernetes обрабатывают конфиденциальную информацию, требующую защиты от несанкционированного доступа. Kubernetes предлагает удобные способы для защиты данных. Рассмотрим основные из них в этой статье, а именно — шифрование в покое, шифрование ...

Hippotable — анализ данных прямо в браузере Сегодня я расскажу про hippotable — удобный инструмент для анализа данных. Мне часто нужно поковыряться в датасете среднего размера (1–100 Мб), чтобы ответить на довольно простые вопросы. Ни один из существующих инструментов (bash, google sheets, jupyter + pandas) не показал...

Первый за 50 лет космический корабль NASA для отправки астронавтов на Луну собран и готов к испытаниям: фото Американское управление по аэронавтике и исследованию космического пространства (NASA) поделилось интересными новостями по своей лунной программе. Космический корабль Orion лунной миссии NASA Artemis 2 собран целиком, объединив в себе служебный модуль и капсулу для экип...

Мамкин программист про ИИ, «программисты скоро будут не нужны» и прочие страшилки Недавно на Хабре вышел перевод статьи под названием: "Классическое программирование на грани вымирания" с постапокалиптической картинкой, где автор буквально пишет, что "Приближается конец эпохи классических компьютерных наук, и большинство из нас словно динозавры в ожидании...

Мемоизация в React: я почитал документацию вместо вас В статье рассмотрены три инструмента мемоизации в React: useMemo, useCallback, memo. Главный источник информации: документация React. Не всем комфортно работать напрямую с документацией, так что если вы постоянно откладываете погружение в документацию React - я сделал это за...

Вливаемся в Data Science: подробный roadmap что и где изучать Привет, Хабр) В этой статье рассмотрим план становления начинающим дата-сайнтистом. Рассмотрим, что и где изучать, чтобы преисполниться в своём познании. А там и до оффера недалеко Читать далее

Квест по синхронизации аналитического и оперативного хранилищ в реальном времени без потерь на сотнях терабайт данных Я работаю в компании STM Labs, где мы строим большие высоконагруженные системы класса Big Data. Эта статья написана по мотивам моего выступления на конференции Saint Highload 2023. Хочу рассказать вам увлекательную историю про то, как мы искали лучшее решение по синхронизаци...

Как мы оптимизировали процессы обеспечения качества Привет! Меня зовут Таня, я куратор в SM Lab. В этом посте я расскажу вам о нашем пути оптимизации тестирования — узнаете, какие на нашем продукте были проблемы в процессах тестирования, как мы их решали, почему не надо отвлекать тестировщиков и в чём польза интуитивного тест...

Как успешно пройти собеседование на Technical Product Manager в Тинькофф? Личный опыт Всем привет, меня зовут Виктор и на днях я выхожу в Тинькофф на позицию тех-продакта в Платформу базовых мобильных технологий.Во время подготовки к собеседованиям мне очень помогла статья на Хабре, однако там речь шла о позиции QA. Поэтому в этой статье я хочу рассказать о л...

Как я нашёл работу геймдев разработчиком в США из России. Размер и способ оплаты, английский, где искать Я геймдев разработчик, и 6 месяцев назад я нашёл работу на США из РФ. В этой статье рассказываю как я это сделал. Подкрепил слова скриншотами переписок, звонков, контрактом.Рассказал про:• Размер и способ оплаты• Уровень английского• Сайты для поиска вакансий• Резюме и сопро...

[recovery mode] Какой работодатель тебя купит? Постараюсь раскрыть для тебя все нюансы, с которыми ты должен быть знаком перед выбором рынка и будущего работодателя.    Эта статья будет полезна не только начинающим, но и тем, кто давно не менял работу и сейчас не представляет, что их может ждать на рынке.Пару л...

[Перевод] Как оптимизировать медленные SQL запросы? Большинство проблем, связанных с БД, во время разработки остаются незамеченными, потому что мы пишем код и проверяем его правильность только при малой "заполненности" нашей БД. Поэтому, когда приложение выкатывается в продакшн, через некоторое время начинают появляться пробл...

Почему компании не нужен архитектор Программируя в течение 20 лет, я очень часто слышал об архитектуре и архитекторах. При этом с архитектурой проектов работать приходилось постоянно, а живых архитекторов не видел никогда. Да, в командах всегда были сильные разработчики, которые следили за развитием отрас...

Как построить Observability для инфраструктурной платформы Можно ли сделать классный и удобный мониторинг не для галочки, а с пользой для всех участников разработки? Инженерный опыт подсказывает, что Observability как процесс идеально построить не получится. Но стремиться к этому стоит.Статья подготовлена на основе доклада Владимира...

Грейдирование для менеджеров: как внутреннее тестирование помогает нам рефакторить Wiki Всем привет! Меня зовут Соня Евстигнеева, я руководитель проектов в AGIMA. Расскажу почти детективную историю про нашу внутреннюю систему грейдирования и про то, какие метаморфозы с ней происходят. Сначала она просто помогала нам определять уровень знаний у новичков, а тепер...

Upgradeable smart contracts. 5 способов обновить код смарт-контрактов на все случаи жизни Рассказываем, зачем нужны обновляемые смарт-контракты, какие методы обновления существуют, а также делимся примерами кода реализации. Это может оказаться must have технологией на старте проекта, которая поможет спасти ваш код от уязвимостей и критических ошибок. Читать далее

[Перевод] Работа с 3D-графикой и визуальными эффектами в Qt Design Studio Чтобы водители получали приятные впечатления от вождения автомобиля, дизайнерам нужны современные инструменты, позволяющие создавать великолепные графические интерфейсы с минимальными затратами времени и сил. Qt Design Studio содержит все необходимые ресурсы для создания пот...

Создание генетического алгоритма для нейросети и нейроcети для графических игр с помощью Python и NumPy Привет, Хабр!Сегодня я расскажу и покажу, как сделать Genetic Algorithm(GA) для нейросети, чтобы с помощью него она смогла проходить разные игры. Я его испробовал на игре Pong и Flappy bird. Он себя показал очень хорошо. Совет прочитать, если вы не читали первую статью: "Соз...

Дайджест научпоп-новостей за неделю, о которых мы ничего не писали • Учёные нашли идеальный способ готовить эспрессо• Учёные придумали самовосстанавливающийся бетон• Биологи установили, что волосы реально седеют от стресса, но этот процесс обратим• Биологи построили математическую модель, объединяющую эволюцию куриц, рыб и лягушек• 99% косм...

Сервисы дружитес. Как платформа упрощает создание интеграций без ошибок Всем привет! Кратко обо мне: меня зовут Никита и я уже третий год работаю над тем, чтобы платформа СберМаркета становилась лучше день ото дня. Мой основной язык программирования — Go, но, учитывая специфику платформенной разработки, еще и bash.В этой статье на примерах разбе...

Обзор Helm Dashboard — графического интерфейса для управления релизами Kubernetes Часто разработчики предпочитают использовать именно визуальные средства, чтобы более эффективно управлять релизами Kubernetes. Один из таких инструментов — Helm Dashboard. С его помощью можно самостоятельно создавать, развертывать, обновлять различные релизы Kubernetes-прило...

[Перевод] Что нового во Flutter 3.16, ч.1 Hola, Amigos! На связи Саша Чаплыгин, Flutter-dev агентства продуктовой разработки Amiga. Это статья-перевод от автора Kevin Chisholm. Оригинал статьи читайте по этой ссылке. Мы решили разбить материал на несколько частей для удобства восприятия. Читать далее

Свой ChatGPT бот в Telegram в 2023 Я решил сделать свою интеграцию ChatGPT в Telegram, чтобы лучше понять, как работает ChatGPT API, какие настройки мне доступны и пользоваться ботом без всяких ограничений, а также иметь свободный доступ к модели GPT-4.Мне не хотелось для этого проекта держать отдельный серве...

Любовь и кошки: Башкирский Translation Forum Russia 2023 в объятиях Gen AI, LLM и CAT-tools Приветствую, дорогие читатели. Впервые решилась написать статью, связанную со своей профессией — с профессией переводчика. Статья покажет не только путь юного падавана в новой среде, но и первый опыт посещения больших мероприятий. И мой вывод: участвуйте! Читать далее

[Перевод] NumPy: оттачивайте навыки Data Science на практике В этой статье мы рассмотрим ряд различных упражнений, используя библиотеку NumPy (и сравним с тем, как мы бы реализовали их без неё). В самом конце статьи я приведу ряд упражнений.t.me/ai_machinelearning_big_data -  моем телеграм канале я публикую актуальные проекты ку...

Проводим и проходим собеседование по системному дизайну Привет Хабр, меня зовут Вячеслав Таранников, я старший Android-разработчик в команде монетизации RuStore, и сегодня хочу поделиться взглядом, из каких ингредиентов можно собрать полезное и эффективное техническое интервью.В предыдущей статье я рассказал, как мы пришли к сист...

Управление цветами в Seaborn: как эффективно визуализировать данные Привет, Хабр. В этой статье я расскажу про своё видение работы с цветом при визуализации графиков. Буду показывать все на примерах — уверен, они вам понравятся.Я покажу не только картинки было-стало, но и приведу примеры кода, а также объясню логику принятия решений: как исп...

«ИИ без границ»: как научить Transformer обрабатывать длинные тексты Разносторонний системный рассказ о том, какими способами можно научить модель работать с длинными последовательностями. Для специалистов, занимающихся обучением LLM, и всех, кто хочет разобраться в теме. Читать далее

Как начать работать с IPv6 там, где его нет (часть 1) Появлением на свет этот материал обязан переводу статьи IPv6 — это катастрофа (но поправимая) (автор Mathew Duggan) и является её логическим продолжением. Если вы живёте в небольшом городе, которого в том числе нет в этом списке, и ваш провайдер в него не входит, то велика...

Измерение частоты на STM32 В этой небольшой статье хочу рассказать вам о различных методах измерения частоты прямоугольного сигнала с помощью микроконтроллера STM32. В процессе работы над одной из железок возникла необходимость организовать несколько выводов, которые бы измеряли частоту входного сигна...

70% IT-специалистов отметили важность атмосферы в компании, где им предстоит работать Мы на Хабр Карьере снова пообщались с IT-специалистами и собрали исследование. Но в этот раз не только его — результаты показались нам настолько интересными, что мы придумали тест для поиска работы. Эта статья — про атмосферу в IT-командах, а именно «вайбах», которые, как ок...

SPARK для «малышей» Примеры кода на Python для работы с Apache Spark для «самых маленьких» (и немного «картинок»).Данная статья представляет собой обзор основных функций Apache Spark и рассматривает способы их применения в реальных задачах обработки данных. Apache Spark — это мощная и гибкая си...

Информационный парадокс чёрных дыр теоретически разрешим на квантовом компьютере В комментариях к одной из моих июльских статей «О возможных составляющих тёмной материи» уважаемый Дмитрий Кобзев @Kodim выдвинул простой и гениальный тезис: «темная материя — это материя в черных дырах. В статье этот вариант не рассматривается?» В статье этот вопрос действи...

Darcs и Pijul. Системы контроля версий для тех, кто не любит деревья Небольшой обзор систем контроля версий, альтернативных git, и основанных на математической теории. Речь пойдёт о двух системах распределённого контроля версий: Darcs, написанной на Haskell, и Pijul, написанной на Rust. Обе они сейчас активно развиваются и предлагают св...

Костыли, которые горят, пока всё лопается: как выглядит разработка под децентрализованные финансы Из рекламы МММ: он не халявщик, а партнёр! Тут на днях один молодой бомж с филфака СПбГУ дал интервью Карлсону (тому, что живёт в Х). После чего куча моих знакомых стала задавать вопросы про блокчейн-разработку (крипту). Ну и ещё в Телеге запустили переводы в один клик, и ...

[Перевод] Как у меня украли авторство патча Примерно полтора года назад я попросил у своей бывшей компании разрешения поработать над проблемой, влиявшей на возможности отладки нашего проекта: gdbserver не мог отлаживать многопоточные приложения, работающие на архитектуре PowerPC32. Подключение к gdbserver было поломан...

Samsung не готова давать 7 лет обновлений всем своим смартфонам Многие сходятся во мнении, что линейка Galaxy S24 получилась, хотя и неплохой, но недостаточно привлекательной, чтобы владельцы Galaxy S23 или даже S22 захотели обновляться. Нет уверенности, что кто-то из предпочитающих средний ценовой сегмент польстится на новые модели, к...

Проджект менеджер свалился под стол с кровавой пеной во рту — что делать? Айтишный труд опасен: можно отравиться соевым латте, словить инфаркт от правок и подраться на корпоративе. Можем ли мы рассчитывать на помощь коллег в случае ЧП? Пока вы врубаете VPN, чтобы спросить совета у ChatGPT, ваш коллега отправится на тот свет. В этой статье раз...

[Перевод] Основы Scrum менее, чем за 10 минут (Scrum Alliance) Скрам  –  это легкая методология, которая помогает людям, командам и организациям создавать ценности. Это простая и намеренно неполная система, которая позволяет пользователям полностью раскрыть свой потенциал и работать в режиме Agile. В центре внимания Скрам...

Обзор современных подходов персонализации диффузионных нейронных сетей Задача персонализации text-to-image модели состоит в донастройке предобученной нейронной сети так, чтобы она могла генерировать изображения заданного объекта в выбранных сценах. Несмотря на то, что подходы к решению этой задачи существуют, для их применения в высоконагруженн...

Валидация входных данных в фильтрах Minimal API .NET, просто и без затей В последние год-два снова набирает силу тенденция обращать самое пристальное внимание на производительность разрабатываемых приложений. Тема на самом деле непростая, поскольку производительность не на пустом месте появляется и требует значительных временных ресурсов и квали...

Как мы вовлекаем сотрудников и строим культуру внутри технической поддержки У нашей техподдержки сложная структура: основной офис первой линии — в Обнинске, ещё есть площадки в Томске и Волгограде, а несколько сотрудников работают полностью удалённо. И мы хотим, чтобы наш пользователь получал человечный сервис. Проблема в том, что такое понятие, как...

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

[Перевод] Как мониторить Jenkins с помощью Prometheus, Node exporter и Grafana Перевели туториал, о том как установить и настроить связку Prometheus, Node Exporter и Grafana для Jenkins. Статья будет полезна тем, кто учится выставить системы мониторинга с помощью этих инструментов. Читать далее

О пройденном пути, полученных результатах и наших планах в мониторинге Да, эта тема обсуждалась уже не раз, но мы хотим показать именно наш, более комплексный подход. В большинстве статей рассказывается именно о узконаправленных проблемах мониторинга и вариантах их решения, мы же хотим рассказать о пройденном пути, полученных результатах и наши...

Классификация экзопланет (часть I обработка данных) В космосе есть нечто завораживающее и прекрасное, в то же время человек устроен так, что ему если ему что то не известно, то стоит этого бояться (спасибо нашим мамам папам в n-ном поколении за столь широкий диапазон восприятия информации и реагирования на неё), тем не менее ...

Асинхронная работа с файловой системой в Vert.x Vert.x – это экосистема для создания реактивных приложений на JVM, которые могут масштабироваться и обрабатывать огромные объемы данных в реальном времени. Это полиглоттная платформа, поддерживающая не только Java, но и Kotlin, Groovy, Scala, и еще js. В контексте статьи раб...

Отправляем и принимаем SMS с помощью SIM868 и Repka Pi В этой статье мы продолжим рассказ об использовании модуля GSM/GPRS/GNSS Bluetooth HAT, созданного на базе SIM868, для беспроводной передачи данных в виде СМС-сообщений через Российский одноплатник Repka Pi. Такой способ даже в наше время актуален, когда нужно управлять авто...

Стало известно, почему пикап Toyota Hilux Champ получился таким дешевым. Покупателю он поступает «собранным на 70%» Toyota удивила ценой пикапа Toyota Hilux Champ – стоимость базовой версии составила всего 13 тыс. долларов, а в топовой версии за 16,5 тыс. долларов – и мощный мотор, и даже автоматическая коробка передач. Аттракцион неслыханной щедрости? Toyota Hilux Champ...

Как мы выстроили систему визуализации ошибок с помощью Grafana и снизили время на их отработку с 2 часов до 15 секунд Я работаю в DataNewton сервисе для скрининга контрагентов. Данные, которые мы предоставляем, берутся из 43-х официальных источников. Чаще всего это базы данных государственных сервисов. И тут есть проблема: такие сервисы любят менять формат массивов, в которых они отдаю...

Квоты в Kubernetes: очевидные, менее очевидные и совсем не очевидные Привет, Хабр! Я Виктор, техлид продукта CI/CD в Samokat.tech. А это, :(){ :|:& };: fork-бомба, которая создаёт свои дочерние процессы бесконечно. Запуск такой штуки в контейнере без ограничений роняет всю ноду. Не используйте в проде! Если запустить в WSL, то винду тоже ...

Автоматизация бизнес-процессов в Heflo: от А до Я Привет, Хабр! Меня зовут Анастасия Андреева, работаю процессным аналитиком направления Business Process Management в компании GlowByte. Не так давно мой коллега рассказывал о Heflo – универсальной системе бизнес-моделирования. В рамках деятельности Heflo Club мы в GlowByte с...

Разбираем самый маленький JPEG в мире Недавно на Хабре была опубликована статья Разбираем самый маленький PNG в мире. Интересно, а какой самый маленький файл JPEG? В ответах на StackOverflow и Reddit можно встретить размеры 107, 119, 125, 134, 141, 160 байтов. Все они представляют серый прямоугольник 1 на 1. И к...

История одного изобретения и личный опыт патентования. Просто о сложном Немного научно-познавательная, немного практическая статья об одном из изобретений в сфере новых способов получения мононитей из полимерных материалов и моих попытках его реализации и патентования. Читать далее

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

Правильная работа с базой данных на Python Эта статья рассчитана в большинстве своём на новичков. Тут мы поговорим о том, как не упереться в лимиты подключений к базе, и чтобы приложение в продакшн не упало. Читать далее

2. Симулятор Симона. Первая схема Не планировал я скоро еще что либо написать, но только еще больше раздразнили...Итак, покажу как легко и быстро создавать и анализировать схемы в Симуляторе. Еще раз, статья за симулятор, а не за схемотехнику.Запускаем симону и нажимаем на: "новая схема": Читать далее

YTsaurus SPYT: помогаем планировщику Apache Spark быть ещё эффективнее В больших распределённых системах многое зависит от эффективности запросов: если на гигабайте данных неоптимальный запрос может выполняться за миллисекунды, то при увеличении массива в тысячи раз, сервер начнёт кряхтеть, пыхтеть и жаловаться. Чтобы избежать этого, помогут зн...

[Перевод] Создание профсоюза CD Projekt Red В 2023 году после очередной «реструктуризации» компания CD Projekt Red уволила 9% сотрудников. В ответ на это работники решили организовать профсоюз. Интернет-издание CD-action взяло интервью у представителей профсоюза. Один из них, Лев Ки — наш соотечественник. Чи...

className убивает ваш UI kit UI kit играет важную роль в разработке веб-интерфейсов. Он представляет собой набор компонентов и стилей. Основная ценность его использования - это экономия времени. Вместо того, чтобы создавать каждый элемент с нуля, разработчики могут использовать уже готовые элементы, что...

«Вредные советы»: тимлид-токсик — как распознать в себе и перейти на сторону добра Привет, Хабр! Я Надежда Костякова, тимлид направления Data Science в Первой грузовой компании. Сегодня в режиме вредных советов расскажу о том, как тимлиду не стать «токсиком», обеспечивать ненасильственное выполнение KPI и какие подходы используем мы в ПГК, чтобы организова...

Из пушек по воробьям. Генерация и решение лабиринта не самым обычным способом На уходящей неделе мне попалась симпатичная, хоть и не новая мини‑серия статей на Дзен‑канале @zdgzdgzdg про процедурную генерацию лабиринта методом «коллапса волновой функции». Пока я читал эти статьи и знакомился с кодом, меня осенило: ведь это&nbs...

История одного саббатикла Было время когда я решил, что сидеть за компьютером все время как-то нехорошо и надо что то руками сделать. Это было давно и в итоге я спроектировал, и построил установку горизонтально-направленного бурения. С тех пор прошло много лет и я решил отдать все материалы по этой у...

Удалёнка в ИТ-2023: золотая пуля или преграда для карьеры? В чём хранить деньги, в рублях, твёрдой валюте или золоте? Кто круче, Александр Овечкин или Уэйн Гретцки? Что лучше, удалённая работа, гибрид или офис?В жизни множество вечных вопросов, попробуем ответить на последний. На эту тему написано уже немало статей, но тема не ...

Как автоматизировать построение архитектурных схем в большой микросервисной системе Если у вас есть большая система, состоящая из множества микросервисов, то вы наверняка задавались вопросом: «Что сделать, чтобы архитектурная схема всей системы была всегда на 100% актуальной?». Обычно, в компаниях есть свои практики формирования архитектурных схем и ведения...

Как работать с текстом при дизайне игровых интерфейсов Статья про приёмы, упрощающее восприятие текста игроками и про особенности работы с текстом на игровых проектах. Читать далее

Как работает аутентификация в Kubernetes: ServiceAccount и RBAC Эта статья является кратким агрегатором сведений, характеризующих аутентификацию и авторизацию в Kubernetes и позволяет познакомиться с базовыми понятиями, такими как ServiceAccount, RBAC, Role, RoleBinding, ClusterRole и ClusterRoleBinding. Читать далее

Игра, которую невозможно не полюбить Здравствуйте, уважаемые хабровцы!Меня зовут Ернар Шамбаев, я - разработчик компьютерной версии игры “Мастер тогызкумалака”, и сегодня я бы хотел рассказать вам об одной увлекательной настольной логической игре, про которую вы вряд ли слышали, несмотря на то, что в нее играют...

Как правильно настроить Console Cloud Google для индексации страниц через API В статья я постарался подробно описать настройку сервиса Console Cloud Google, который необходимо для быстрой индексации страниц в поисковой системе Google. Читать далее

Время — деньги, но обменный курс неоднозначен Если за 10 часов работы человек ожидает получить 30 тысяч, то это не значит, что за 30 тысяч он готов работать 10 часов. В Стэнфорде сделали интересное исследование, которое показало, что время в деньги конвертируется с потерями, а вот деньги во время — с некоторым прира...

Выбор загрузочного диска домашнего компьютера из Home Assistant Мой основной компьютер - macbook, который всегда со мной, и на котором я делаю почти все что нужно как дома так и вне его. Но также есть домашний комп, на котором бывает оптимальнее делать ресурсоемкие задачи. Кроме того, некоторые вещи на маке делать неудобно или вовсе нево...

Деплой .NET приложений для самых маленьких. Часть 0 Давным-давно, когда Linux был ещё на ядре 2.6, а PHP5 был глотком свежего воздуха, я впервые заинтересовался миром веб-технологий. Читал учебники, статьи, зависал на форумах, но все равно мало мог понять как код, который я вижу на экране, превращается в волшебные сайты с кно...

Почему решения принимаются не на основе дашбордов? Чем похожи дашборд и рекламный баннер? У нас упала конверсия из просмотров в клики! У нас не продаются товары! Два йогурта по цене одного! Оба привлекают внимание, содержат и картинки, и текст и реже, чем хотелось бы, приводят к действию.Аналитики часто ожидают, что даш...

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами В предыдущей статье мы познакомились с основами работы AXI-Stream протокола и модифицировали наш сумматор, чтобы он был совместим с этим интерфейсом. Также было отмечено, что из-за увеличения сложности сумматора встает проблема в его тестировании. Напрямую генерировать все в...

SDR приемник GPS на микроконтроллере В этой статье я расскажу о том, как я делал самодельный SDR GPS приемник на микроконтроллере. SDR в данном случае означает, что приемник не содержит готовых GPS-модулей или специализированных микросхем для обработки GPS сигналов - вся обработка "сырых" данных выполняется в р...

Fullstack QA — путь самурая, или раскрытие потенциала тестировщика Специалисты fullstack QA весьма востребованы работодателями. В сегодняшней статье расскажу, в чем ценность таких сотрудников, какие hard и soft skills нужны и почему будущее именно за fullstack QA. Читать далее

моделирование 3d модели девушки в стиле pin up Всем привет,Сегодня моделю девушку в стиле pin up, безымянный персонаж, по понравившейся картинке. Не заказ, моделил для себя, просто по фану. Модель на момент публикации скорее всего уже будет выложена в моём профиле и если вам понравится сможете её скачать.Так же я приложу...

Как долго вам нужно тренироваться, чтобы получить максимальный результат Если вы занимаетесь спортом, то наверняка уже задумывались, насколько долго вам нужно тренироваться, чтобы ваши усилия по максимуму окупились. Сертифицированный личный тренер Кайри Фурр поделилась своими знаниями об этом.

Закон парадокса в логике и математике В результате поиска в Интернете выяснилось, что термин «закон парадокса» в научной литературе практически не встречается. Исключением в настоящее время является статья по литературоведению, моя статья в Хабре и статья, которая в данный момент находится в стадии рецензирован...

Нотация моделирования архитектуры С4 — примеры диаграмм и инструменты Если возникает вопрос об описании архитектуры системы, то есть несколько основных решений где и как это сделать. Среди популярных нотаций для визуализации схемы архитектуры можно выбрать C4, разработанную Саймоном Брауном.В этой статье я хочу показать пример применения нотац...

Недельный геймдев: #169 — 14 апреля, 2024 Из новостей: компанию авторов Genshin Impact оценили в 23 миллиарда долларов, Blizzard договорилась с NetEase о возобновлении сотрудничества, что показали на презентации The Triple-i Initiative.Из интересностей: документалочка про создание Pentiment, почему Risk of Rain в...

API для хостинга: кому он потребовался и как мы его сделали Привет, Хабр! На связи хостинг-провайдер SpaceWeb. В этой статье расскажем, как работает клиентский API у нас, почему для него мы выбрали технологию JSON-RPC и чем она нам так нравится. Историей делятся Виталий Киреев, руководитель R&D, и Алексей Шашкин, продакт-менеджер...

Как заставить своего тимлида работать Привет, Хабр! В этой статье я хочу поделиться ситуацией из своего опыта работы, связанной с появлением в команде тимлида, который, к сожалению, не смог завоевать авторитет, зато получил псевдоним "Терплид". Читать далее

От HTTP к RCE. Как оставить бекдор в IIS Всем добрый день! Меня зовут Михаил Жмайло, я пентестер в команде CICADA8 Центра инноваций МТС.На проектах часто встречаются инстансы Internet Information Services (IIS). Это очень удобный инструмент, используемый в качестве сервера приложений. Но знаете ли вы, что даже прос...

В 2ГИС теперь можно увидеть на карте друзей и поделиться своим местоположением Картографический сервис 2ГИС запустил новую функцию «Друзья на карте», она уже работает в новейшей версии мобильных приложений для операционных систем iOS и Android. С её помощью можно поделиться своим местоположением с друзьями и близкими: теперь прямо в 2Г...

У ЕС проблемы с ракетостроением, но их постепенно решают. Когда в космос полетит ракета-носитель Ariane 6? Несколько лет назад в европейской ракетной отрасли возникла проблема: ракета-носитель Ariane 5 устарела. Вместо неё решили построить новую. Правда, здесь у стран ЕС возникли разногласия — не все были готовы строить почти с нуля новую ракету-носитель, понимая, что это дорого ...

Calypso: Схема данных MongoDB на Scala Чтобы применять Domain-Driven Design, DDD Aggregate и Transactional outbox на MongoDB, наша команда создала open source библиотеку calypso для работы с BSON.Публикация для тех, кто стремится к современным практикам разработки и разделяет наше влечение к Scala 3.Готовы к откр...

Вы точно работаете 8 часов? В России, как и во многих странах Европы, перерыв на обед не включён в рабочее время. У нас это закреплено в статье 108 ТК РФ. Поскольку длительность обеда чаще всего 1 час, то рабочий день длится 9 часов. А если работать в офисе и учесть время на дорогу, то получится, ...

Записки технического руководителя проектов Статья была написана мной в 2020 году, после запуска в прод очередной платформы, построенной на микросервисной архитектуре с целью зафиксировать выученные уроки с точки зрения технического руководителя проекта. В проектах участвовало со стороны подрядчика более 300 человек т...

Как построить хороший Vision продукта, используя Lean Canvas? Многие продакт-менеджеры тонут в сотне документах, которые приходится постоянно обновлять. Картинка, создающая целостное понимание по продукту, теряется или тратится много времени на то, чтобы её собрать. Целевая аудитория, исследования — в одном месте, метрики — в друг...

А где же звук, или почему дистрибутив Ubuntu может не звучать «из коробки» Данная статья написана в помощь пользователям Ubuntu (Lu.., Xu.., Ku.. и прочих derivatives) которые столкнулись с отсутствием звука или проблемами с другим оборудованием на достаточно свежем «железе». Это статья не перевод, а попытка обобщить и показать путь. Если оборудова...

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

4 сценария, когда нужно сделать ставку на Kotlin Multiplatform, а не Flutter Привет, это Максим Мялкин — управляющий партнёр и руководитель мобильной разработки KTS.Кроссплатформенные- инструменты помогают бизнесу не писать код два раза под iOS и Android, а переиспользовать его на обеих платформах. В статье — о том, чем Kotlin Multiplatform отличаетс...

Математика наклона в картах, или как мы сделали небо Недавно в карте 2ГИС появились небо и туман, которые можно увидеть, увеличив масштаб и наклон. В статье расскажу, для чего нам понадобились эти фичи, с какими сложностями столкнулись в процессе исследований и как в итоге реализовали нужную функциональность. Читать дале...

Яндекс запустил Нейро. Рассказываем, как он работает Сегодня мы запустили новый сервис Нейро — новый способ поиска ответов на вопросы. Пользователь может задать Нейро любой вопрос, а тот сам подберёт подходящие материалы в Поиске, проанализирует их и соберёт найденную информацию в одном ответе, подкрепив его ссылками на источн...

Как выбрать и внедрить  OCR-систему для распознавания и сверки документов Приветствую, друзья! Меня зовут Александр Вихарев, и я работаю системным аналитиком в проектах для Fix Price. Одной из самых сложных задач при работе с документацией является сверка документов. Причем сверка трудна и с точки зрения программной реализации, если заниматьс...

Как записывать видео на внешние диски на iPhone 15 Pro и iPhone 15 Pro Max Одной из главных и действительно крутых фишек iPhone 15 Pro и iPhone 15 Pro Max стала возможность записывать видео на внешние накопители. Теперь вы можете спокойно взять смартфон с минимальным объемом памяти, через USB-C подключить к нему жесткий диск или карту памяти и, не...

Подключаем модуль TM1638 к Arduino без библиотеки SPI Изначально поставка задачи была такой. У меня была в наличии плата TM1638. Нужно было научиться с ней работать (ну и проверить работоспособность самой платы) для того, чтобы использовать её в одном интересном проекте (о нём в другой раз). Под рукой оказалась платка Arduino N...

Как стать хорошим менеджером и наладить коммуникацию в команде? Советы от экспертов В жизни IT-специалиста может наступить момент, когда прежние задачи уже не интересны. Он работает настолько долго, что знает все процессы буквально наизусть. Более того — готов привносить изменения в работу команды. Один из таких специалистов — Иван, разработчик в Selectel...

Как мониторить здоровье вашей Gradle-сборки Как себя чувствуют ваши Gradle-сборки? Рассказываем, как проверить их состояние и как «подлечить», чтобы CI работал чётко. Читать далее

N-граммная языковая модель в эпоху LLM — как устроена и зачем нужна Тренды трендами, а всегда найдутся те, кто плывет против течения. Пока трендом становится уменьшение размеров модели, авторы из университета штата Вашингтон решили вообще не обращать внимание на размер и проверить, имеет ли смысл в эпоху LLM вернуться к N-граммным языковым м...

Сборка прошивки из исходников для Opange PI i96(Orange PI 2g-iot) Здраствуйте меня завут Дмитрий. Как-то я купил OpangePI i96, но к сожалению производитель давно забыл об этой плате, прошивки для неё построены на ядре 3.10.62(актуальная версия на момент написаня статьи 6.5.1). Поэтому я решил собрать собственную прошивку на актуальной верс...

ИТ в РФ. Все по прежнему: не нужно. Итоги 1 квартала 2024, обзор текущей прессы и статей на Хабре За МКАДом зарплаты в несколько раз меньше, чем в ДС. Это правда. Но нужно учитывать, что у каждого жителя замкадья есть огород и приусадебное хозяйство. Жители замкадья питаются с огородов, выращивают птицу и скот. Поэтому деньги им нужны только на одежду и коммунальные плат...

Виртуальная клавиатура на Python+OpenCV В данной статье разберемся, как написать виртуальную клавиатуру, используя Python+Opencv.Идея заключается в создании виртуальной клавиатуры, выводе на экран и возможности ее использования. Подразумевается, что клавиатура будет работать с текстовыми редакторами. Для того, что...

Пишем файловую систему для работы с изображениями на TypeScript В этой статье мы займемся созданием файловой системы на NodeJS + TypeScript в пользовательском пространстве, которая будет управлять изображениями пользователей. Она будет преобразовывать их в различные форматы, изменяя размеры и предоставляя уникальные бинарные данные изобр...

[Перевод] Вероятно, вы неправильно используете метод __init__ в Python Автор статьи обращает внимание на проблему, которая заключается в использовании метода __init__ для сложной логики создания объектов, что приводит к разрастанию и усложнению кода. Статья предлагает использовать вспомогательные методы, чтобы разделить логику создания объектов...

QA под капотом. Тестируем и настраиваем 1С-Битрикс Привет, Хабр! Меня зовут Анастасия, я QA-специалист SimbirSoft и работаю на проектах с 1С-Битрикс. Не единожды я могла наблюдать, насколько эффективно бывает допустить QA-команду внутрь CMS, чтобы достичь бизнес-целей клиента. И на примере нескольких кейсов из разных проекто...

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

Бесшовность 2.0: как работает шардирование в Сбере Если у вас не просто большая компания, а целая экосистема с разными сервисами, IT-инфраструктура должна обеспечивать бесшовность. Клиенты и сотрудники могут входить в систему с разных устройств, но изменение информации в одном канале должно отображаться в других, а целостнос...

Редкая материнская плата-мутант от Asus: топовая Asus Maximus XIII Hero с четырьмя слотами для не топовой памяти Один из пользователей Twitter (X) опубликовал фото нетипичной материнской платы. Asus Maximus XIII Hero, построенная на чипсете Intel Z590 и со всеми атрибутами флагманской системы, оснащена четырьмя слотами для ноутбучной памяти SO-DIMM. Как такое возможно? Есть предп...

Зачем нужен архитектор 1С. Часть 2 В предыдущей статье habr.com/ru/companies/otus/articles/772490 я постарался на конкретном примере показать различие между разработчиком 1С и архитектором 1С. Насколько по разному они подходят к решению одной и той же задачи. В этот раз я приведу пример, в котором различие ...

Xiaomi 14 показали вживую крупным планом Лу Вейбинг, который присутствовал на саммите Snapdragon 2023, показал смартфон Xiaomi 14, построенный на базе однокристальной системы Snapdragon 8 Gen 3. Мы уже публиковали фото президента Xiaomi, который держит в руках смартфон, но рассмотреть его было невозможно. Нова...

Все материалы на данном сайте взяты из открытых источников или присланы посетителями сайта и предоставляются исключительно в ознакомительных целях. Права на материалы принадлежат их владельцам. Администрация сайта ответственности за содержание материала не несет. (Правообладателям)