Социальные сети Рунета
Пятница, 10 мая 2024

Поиск опечаток в проекте Ничего не нашёл на Хабре про CSpell, попробую исправить ситуацию.Для среднего проекта с документацией понадобился линтер для проверки опечаток. Одним из условий была локальная и быстрая проверка текста, без отправки на внешние сервера.Таким инструмен...

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

[Перевод] Как создать приложение для чата в реальном времени с помощью React, Node, Socket.io и HarperDB Статья посвящена созданию приложения для чата в реальном времени с чат-комнатами, с использованием Socket.io и HarperDB. Научимся на практике создавать полнофункциональные приложения, в которых бэкэнд может взаимодействовать с фронтендом в реальном времени. Руководство будет...

Как я приложение на Compose писал Далеко не новость, что в мобильной разработке под Android развивается новый подход к построению UI. Он же Compose. Он же плейбой, филантроп и просто классная функционалочка, которая колоссально упрощает жизнь в процессе верстки пользовательского интерфейса. В статье буд...

Дави жуков Существует много курсов программирования и повышения IT-квалификации, но ни на одном из них не учат системно искать и исправлять ошибки. В реальных крупных проектах до 30% времени может уходить не на написание нового кода и фич, а на поиск первопричин неисправностей и их уст...

Наследие Windows XP: загадка title.wma Старые операционные системы и приложения до сих пор способны удивлять. За каждым файлом порой скрывается целая история. Кто реальный автор демоигры Pinball Space Cadet и правда ли обои рабочего стола Bliss («Безмятежность») были сняты в округе Сонома, штат Калифорния? Подобн...

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

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

Как быстро интегрировать Систему быстрых платежей (СБП) в приложение на Flutter Всем привет! Меня зовут Мурат Насиров, я Flutter-разработчик в Friflex. Мы разрабатываем мобильные приложения и специализируемся на решениях для ритейла. На одном из наших проектов мне пришлось столкнуться с внедрением кнопки оплаты через Систему Быстрых Платежей (СБП). В эт...

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

Обновление кешей сервисов в реальном времени с помощью YDB CDC на примере Yandex Monitoring Меня зовут Егор Литвиненко. Я старший разработчик Yandex Observability Platform. Летом 2023 года я рассказывал на Saint Highload в Санкт-Петербурге про наш путь внедрения YDB CDC для обновления данных в сервисах, чтобы решить проблему инвалидации кэшей.В этой статье будет вс...

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

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

fido2-token как инструмент администрирования MFA токенов Всем привет! Хочу рассказать о практическом применении такой утилиты как fido2-token. Утилита создана для поиска и управления токенами работающими со стандартом FIDO2. В русскоязычном сегменте не нашел публикаций на эту тему, поэтому опишу свой опыт её использования. Не буду...

[Перевод] Vue 3: Ваше первое знакомство с компонентом Transition Мы можем значительно улучшить юзер экспириенс, добавив плавную анимацию перехода между различными состояниями в нашем веб-приложении. Vue.js 3 предоставляет мощный компонент Transition, который упрощает процесс внедрения переходов во Vue-приложениях. В этой статье мы рассм...

Как работает дедупликация данных в потоке Kafka-to-Kafka? Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей части «Как исп...

[Перевод] Предистория AutoCAD На этой недели, 3 декабря праздновался Всемирный день компьютерной графики, и я припас для вас очень крутой контент. В наше путешествие по Италии в октябре этого года мы арендовали квартиру в Рапалло, и там на книжной полке я обнаружил папку с мануалом и с дистрибутивом Auto...

Business Intelligence — быстрый старт Все мы работаем в разных предметных областях, и бывает усложно уделить время знакомству с BI. Надеюсь, у Вас есть менее получаса на чтение этой статьи и знакомство с примером, а также есть желание провести графический BI анализ на .NET, в таком случае - добро пожаловать.В эт...

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

[Перевод] Обучение с подкреплением: 10 вариантов применения В системе обучения с подкреплением агенты обучаются с помощью механизма вознаграждений и наказаний. Агент получает вознаграждение за правильные действия и наказание за неправильные. При этом агент старается минимизировать неправильные ходы и максимизировать правильные. В это...

PFGM++: буст генеративных моделей с применением электростатики Новая ступень в развитии диффузионных генеративных моделей ИИ, и новая возможность создавать собственные изображения в 10 раз быстрее, чем раньше. Это стало реальным благодаря удачной попытке совместить знания об электростатике и принципу функционирования привычных нам диффу...

Внедрение pet-проекта в реальный бизнес или как в одиночку написать ERP-систему для общепита Всем добра! Данную статью меня побудило написать сильное желание, во-первых, зафиксировать некоторые результаты своего профессионального развития и личного опыта помимо основной работы, а также впервые на столь широкой сцене как Хабр, рассказать вам о нюансах развития своего...

[Перевод] Исследователи приблизились к новому пределу скорости решения задачи коммивояжера Целочисленное линейное программирование может помочь найти ответ на множество реальных проблем. Теперь исследователи нашли гораздо более быстрый способ это сделать.   Задача коммивояжера — одна из старейших известных вычислительных задач. Она заключается в поиске к...

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

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

Настраиваем ExecutorService'ы на практике В этой статье хочу рассмотреть что такое ExecutorService в Java, зачем он нужен, варианты создания и в как его настраивать для решения практических задачПонимаю что есть много подобных статей, но в тех статьях что мне удалось найти не хватало практических примеров, сегодня х...

RESTinio-0.7.0: первый существенный релиз за три года В последний раз статья, целиком посвященная открытому проекту RESTinio, вышла на Хабре в декабре 2020-го года, без малого три года назад. Это был рассказ о релизе версии 0.6.13. По сути, это был последний релиз, в котором в RESTinio появилось что-то новое и важное. Потом был...

Нейросети для программистов: уже что-то умеют или еще пока совсем джуны? Я Григорий Тумаков, CTO в Моризо Диджитал. Эта статья — про то, как мы в компании решили протестировать нейросети для рабочих задач.Для начала опросил коллег, кто и чем уже пользовался для облегчения процессов разработки. Затем суммировал свой опыт, добавил комментарии колле...

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

Что быстрее: Animated + useNativeDriver или Reanimated? Привет! Меня зовут Денис, я мобильный разработчик в СберМаркете. Пишу на React Native и люблю анимации, ведь они дают жизнь нашим проектам :)В этой статье попробуем разобраться, что же все таки работает быстрее: React-Native-Reanimated или Animated + useNativeDriver: true.Бу...

Найти отличия, или внедряем Snapshot-тесты для web. Опыт Звука Всем привет! На связи Наталья Данилина и Иван Чечиков из Звука. В этой статье мы хотим поделиться опытом внедрения snapshot-тестов для web-приложения — расскажем, что это такое и для каких задач применяется.Подробности – под катом. Читать далее

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

Как потерять $5000, не уехать в США и остаться должником в $17000+ Ранее на Хабре уже выходила статья Повесть о том как потерять 3тыс. долларов и не уехать в США, в которой @Iliya_karin рассказал о своём опыте сотрудничества с компанией, которая помогает переехать в США IT-специалистам - oCitizens (uDevs).Илья и я стали клиентами oCitizens ...

Почему hr в России деградирует? Почему hr в России деградирует?Мой скромный взгляд на нашу суровую и самобытную hr-реальность. Если вы сталкивались в своей жизни со странными и непонятными решениями от hr-ов, возможно объяснение этому поведению вы найдете в этой статье. 100 лет отставания, которые породили...

BDUI: sapere aude или продолжай писать на коленке Backend Driven UI — относительно новая парадигма создания приложений. Она позволяет сделать продукт индивидуально полезным для каждого пользователя. На личном опыте я убедился, что это очень важно в современном процессе мобильной (и не только) разработки.В данной статье я по...

(Не)реальная Грузия: факты, которые вас не разочаруют Открываем Хабр. Находим статью «Реальная Грузия: грустные факты, которые вас разочаруют». Читаем: тут всё плохо, дорого, негостеприимно, просто ад на земле. Я не буду говорить, что это ловушка, а скажу лишь, что это субъективный опыт конкретно одного человека, который назват...

Реформа проектного управления: как устроена целевая модель для наведения порядка в процессах Привет, Хабр! Меня зовут Данил, я директор по развитию стратегических проектов в СТД “Петрович”. Давайте поговорим о проектном управлении на длинной дистанции – как теоретическая целевая модель процессов реализуется на практике. Представьте ситуацию: коллеги хотят запус...

CRISPR в генотерапии. История и право CRISPR – это революционная технология генной инженерии, которая позволяет точно редактировать ДНК. Применение его в генотерапии может изменить жизнь миллионов людей с генетическими заболеваниями и миллиардов – с приобретенными. В этой статье я рассмотрю историю применения CR...

Интеграция Keycloak в приложение Spring Boot 3 с использованием протокола OAuth2.0 В современном мире веб-разработки обеспечение безопасности пользовательских идентификаторов и управление доступом к ресурсам становятся все более важными задачами. Один из мощных инструментов, предоставляющих полноценное решение для этих задач, это Keycloak, современная сист...

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

Игровой жанр MOBA. История, особенности, примеры и сравнение Жанр MOBA, что в переводе означает "Многопользовательская онлайн боевая(Б) арена(А)", зародился как поджанр стратегий в реальном времени (RTS). Сегодня это один из самых популярных и быстро развивающихся жанров компьютерных игр. В этой статье мы погрузимся в историю этого ув...

0b10 лет спустя: нырок в девопс Привет, Хабр! На связи автор статьи двухлетней давности «Пожалуйста, прекратите называть админов девопсами». В ней, если помните, я ловил пескарей в процессе поиска работы офигевал от несоответствия реального мира и моих онтологических ожиданий. С те...

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

Найти работу в IT: миссия 2024 Привет! Меня зовут Полина, и я уже десять лет работаю дизайнером в айти. В основном продуктовый UX/UI, но были и отдельные проекты разного характера.  Расскажу про свой (и друзей) опыт поиска работы два года назад и сейчас, на русскоязычном рынке.  Читать дальше →

Как использовать Spring в качестве фреймворка для Flink-приложений Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в наши продукты в цикле статей. В ...

Правильный мониторинг API: метрики и лучшие практики Применение API в разработке ПО сыграло большую роль в создании современных приложений и повлияло на их общую оценку и опыт конечных пользователей. В этой статье Екатерина Саяпина, Product Owner личного кабинета платформы МТС Exolve, рассказывает про правильные подходы при от...

Как подключить Yandex GPT к своему проекту на Python 6 декабря Яндекс открыл доступ к своим диалоговым моделям (моделям генерации) и векторного представления текста через API. API уже доступно в Yandex Cloud. Вчера мне потребовалось применить его в приложении, однако, не удалось найти руководства, как сделать это быстро. Докум...

Как за одну неделю захватить контроллер домена, или Пивотинг за 300 У этичных хакеров не принято держать при себе то, что поможет кому-то найти брешь в системе защиты до того, как наступит недопустимое событие. А семь лет практики в анализе защищенности ИТ-инфраструктур дают свои плоды. Например, нетривиальные кейсы, о которых хочется расска...

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

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

Гайд по релокации в Великобританию и получению ВНЖ в 2023 по Innovator Founder Visa В этой статье я постараюсь максимально подробно описать, как выглядит процесс получения инноватор визы и ВНЖ Великобритании, поделиться реальными кейсами, затыками и рисками. Статья будет полезна для стартапов, предпринимателей и других специалистов, рассматри...

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

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

InfiniBand в Windows — это просто К написанию этой небольшой инструкции меня привела статья на Хабре - Быстрая сеть в домашней лаборатории или как я связался с InfiniBand . Я был очень заинтригован данным вопросом, но каково было моё удивление, когда я не мог найти почти никакой информации по InfiniBand на W...

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

Управление процессами компании: бизнес и ИТ Привет, Хабр! В продолжении темы, связанной с внедрением Каталога ИТ-услуг в компании, хочу разобрать достаточно популярный вопрос (не знаю, как у других, но у нас так точно) – зачем нужно возиться с услугами, если все пользователи работают с системами? Логичнее же «идти от ...

Хороший ретрай, плохой ретрай, или История одного падения Порой простое и очевидное решение может потянуть за собой хвост проблем в будущем. Например, добавление ретраев.Меня зовут Денис Исаев, и я работаю в Яндекс Go. Сегодня я поделюсь опытом решения проблем с отказоустойчивостью из-за ретраев. Основано на реальных инцидентах в с...

Как ответить на вопрос «Когда будет готово?» на основе статистики Всем привет! Я Анастасия Жадринская, деливери-менеджер в Тинькофф. Да, эта статья опять про оценки и сроки выполнения задач. Сроки без вуду, астрологии, гаданий и привлечения экспертов. В статье рассмотрю метод Монте-Карло — элегантный и простой в применении математический п...

Визуализация алгоритмов построения маршрутов показывает как A* для жилых домов Москвы может расчитываться день В прошлых публикациях на Хабре я находил все жилые дома в пешей доступности от входов в метро и МЦК и жилье в 500м от сетевых продуктовых магазинов в Москве. Когда настал момент объединить все метрики для мегаполиса, включая пешеходные расстояния и экологию в единую модель, ...

Передача и обработка IAsyncEnumerable в Typescript с ASP.NET Core Web Всем привет, Меня зовут Олег и я .NET разработчик в компании Bimeister. Я хотел поделиться своим интересным опытом по связи проекта на ASP.NET Core Web App с использованием IAsyncEnumerable коллекций и современного фронт-енд SPA приложения на Typescript.и Vue.js 3 версии.Все...

Тестируем AI на создании прикладного приложения Всем привет, я Григорий Тумаков, CTO в Моризо Диджитал.Недавно рассказал на Хабре, как мы в компании “потрогали” нейросети для прикладных задач разработки. Но там никаких серьезных выводов сделать не удалось.Поэтому решил на этом не останавливаться. Если есть инструменты — и...

Создание собственного компилятора В сети не так много короткой информации по написанию компиляторов, оформленных в виде краткой статьи, поэтому я решил попробовать восполнить этот пробел.В рамках данной статьи будет написан простой компилятор на C++, транслирующий код в ассемблер для MS-DOS, а также опробова...

HPM62xx: первые шаги Китайский рынок микроэлектроники бурно развивается и способен удивить практически любого человека. Менее чем за пять лет был пройден серьёзный путь от производства реплик STM32F103 до интересных и самобытных решений, среди которых микроконтроллеры за 10 центов от WCH, микроп...

Первый месяц жизни приложения BookDesk или как меня пытались взломать В этой статье я расскажу о первых результатах работы приложения для хранения прочитанных книг в первый месяц жизни.Всем привет. Чуть более месяца назад я выпустил релиз своего приложения BookDesk: Читательский дневник для хранения всех своих прочитанных книг. Почит...

Как я написал программу для преданалитики клиентов Привет! Меня зовут Александр Кулагин. Я не занимался разработкой профессионально, но заинтересовался созданием нейросетей. После изучения основ Python, NumPy и TensorFlow я захотел попрактиковаться на реальных задачах. Так я решил создать проект, который оценивает, какие ком...

Давайте поговорим о Kubernetes Всем привет! Меня зовут Андрей, я DevOps инженер.Когда я начинал изучать Kubernetes (K8s), я перечитал много статей, и, что в статьях, что в документации, информация была сильно разрознена, обрывочна. Сложно было скомпоновать информацию в единое целое. На тот момент, мне бы ...

Клонирование голоса из музыки, удаление движимого текста из видео и новые фишки во второй части обновления Wunjo AI Привет, Хабр! Наконец, после множества бессонных ночей, я завершил работу над второй частью обновления open-source проекта Wunjo AI и воплотил своё видение приложения. В этом обновлении основное внимание уделено звуку: улучшено клонирование голоса, извлечение вокала или мело...

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

Гонконгский эксперимент: зачем власти Гонконга придумали цифровой доллар и как идут его испытания Недавно Гонконгская монетарная ассоциация (HKMA Hong Kong Monetary Association) опубликовала отчет о пилотных проектах гонконгской долларовой цифровой валюты (Central Bank Digital Currency, CBDC или ЦВЦБ) — e‑HKD. Регулятор запустил программу‑пилот в мае,...

CSS и безопасность данных Различные компоненты фронтенда традиционно являются вотчиной веб разработчиков и дизайнеров и они не всегда задумываются о безопасности контента. В этой статье я предлагаю поговорить о безопасности CSS.Для начала вспомним, что такое кросссайтскриптинг (CSS).  XSS это ти...

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

Как можно использовать .NET из Javascript (React) в 2023 году Статья показывает опыт использования .NET из JavaScript (React) с помощью компиляции .NET кода в WebAssembly с помощью новых возможностей .NET 7. Включает инструкцию по созданию проекта для .NET для использования из Javascript, и интеграции его в веб-приложение, написанного...

Бизнес-правила в действии: семь лет развития и усовершенствования Business Rules Engine Привет! Меня зовут Владислав Кучинский. Я начинал свой карьерный путь в IT с разработки на С++ и Java, а сейчас являюсь руководителем группы Platform Event Management в компании Bercut. Сегодня я расскажу историю создания платформы Business Rules Engine (BRE) Bercut – систем...

[Перевод] Большинство оконных приложений — это недоработанные real-time приложения В приложениях пользовательского интерфейса таких платформ, как Windows, Linux и macOS, скрывается ряд недоработок, которые порой снижают их быстродействие до раздражающе медленного. Сюда относятся нюансы работы в реальном времени, блокирование памяти при доступе к диску и н...

Как мы создаём Squadus: реальна ли выгода от использования open-source? В апреле 2023 года мы выпустили Squadus — инструмент деловых коммуникаций, фундаментом которого стало СПО. Над проектом мы работаем около трёх лет, и сегодня это комплексный, многофункциональный продукт для компаний любой численности.К созданию Squadus мы подходили как к неп...

Прививка от созависимости. Зачем нужен DI и как он работает в iOS-приложениях hh.ru Всем привет! На связи Яша Штеффен — iOS разработчик из hh.ru. Думаю, любой, кто долгое время писал код для платформы, был свидетелем эволюции работы с зависимостями. На ранних этапах и в простых проектах все создавалось и настраивалось внутри ис...

Диплом специалиста ИБ. Часть №3 — Портативное устройство SmartPulse Привет, Хабр!Вам знакомо такое чувство, когда сидишь, пишешь дипломную работу и думаешь "А не сделать ли умный пульсометр на ESP32-C3 с интегрированными механизмами защиты, динамическим пин-кодом и управлением через BLE с помощью собственного мобильного приложения для IoT-ус...

10 лет Docker: от революционной идеи до современной практики Привет, Хабр! На момент написания статьи, я занимаюсь надежностью (SRE) в компании Workday, еще помогаю студентам в Практикуме осваивать курс по DevOps-практикам.В этой статье я поделюсь кратким обзором истории Docker, его ключевыми концепциями и мисконцепциями. Надеюсь, это...

«Когда будет готово?». Декомпозируем задачи и оцениваем сроки без фатальных ошибок Всем привет! Я Виктор Брыксин, руковожу разработкой Яндекс Телемоста. В статье поговорим про декомпозицию задач в проекте и как можно получить реальные сроки его выполнения.Спойлер: вы все равно ошибетесь, прогнозируя сроки. Но что можно сделать? Минимизировать шанс на ошибк...

Основы репликации в Kafka Привет, Хабр!Репликация в Apache Kafka - это механизм, который обеспечивает доступность и надежность в обработке потоков данных. Она представляет собой процесс дублирования данных с одной части темы в другие, называемые репликами. В этой статье рассмотрим основы репликации в...

Встать и Сделать. Личный опыт Hello Habr! Думаю, что будет хорошим постновогодним подарком статья на тему самодисциплины. Зуб даю за то, что если вы хоть что-то об этом читали ранее, то уж про целеполагание изрядно наслышаны. Про то, что цель должна быть чётко определена, ограничена во времени, в принцип...

Кратко про микросервисы на Scala и Erlang Привет, Хабр!Микросервисы давно являются некой "попсой" для создания гибких, масштабируемых и отказоустойчивых систем. И естественное имеет свою реализацию в функциональном программирование.В статье рассмотрим два языка программирования, которые выделяются своим функциональн...

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

17 мгновений миграции DWH X5 Group Каждый человек по мере взросления встречает множество вызовов на своём жизненном пути. Ответы на эти вызовы формируют его личность. То же самое происходит и с командой. Для нас, офиса CDO X5, пожалуй, определяющим был 2022 год. В том году мы выполнили проект такого масш...

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

Успешный опыт участия в Data Science хакатонах В статье я хочу поделиться успешным командным и личным опытом участия в хакатонах и ML соревнованиях. На примере 13-ти соревнований, по итогу которых мы победили или оказывались на призовых местах, я рассажу о практических советах для будущих участников. На личном опыте я уб...

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

Авторизация и управление доступом на основе ролей для фронтенда В этом модуле проекта мы погрузимся в волнующий мир авторизации и управления доступом во фронтенд-разработке. Сегодня я поделюсь с вами моим опытом работы с технологиями Vue 3, Pinia для глобального управления состоянием и TypeScript. Однако, стоит отметить, что основные при...

Продуктовые команды: строим правильно Привет, Хабр!Мы хотим поделиться подходом к формированию успешной продуктовой команды. В построении и развитии продуктовой команды есть свои законы, о которых можно почитать здесь. Но знание теорем бесполезно без навыков их применения в реальном мире. Поэтому сфокусируемся н...

На что способны виртуальные потоки Java в обработке файлов Привет, Хабр!ПредисловиеНачнем с того,что я не специалист по Java и у меня нет коммерческого опыта на этом языке. Я просто обычный кодер, который по вечерам пилит проекты на Java, а основной мой стек состоит из PHP и смеси Python + Go. В данной статье хочу с вами поделиться ...

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

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

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

Как мы внедряли Sentry. Часть 2 — внедрение в разработку В прошлый раз мы рассматривали внедрение Sentry со стороны эксплуатации: устанавливали на сервер self-hosted, делали его высокодоступным при помощи сети доставки td-agent, настраивали мониторинг.Теперь рассмотрим процесс внедрения Sentry со стороны команды разработки. Читать...

Разработка мобильного клиента СДУ «Приоритет» под ОС «Аврора» на фреймворке Qt Всем привет! Меня зовут Илья, и я разработчик ПО в области автоматизации документооборота в компании «Диджитал Дизайн». Так получилось, что изначально я iOS-разработчик, но по воле случая мне удалось поучаствовать в создании мобильного приложения — клиента СДУ «Приоритет» (д...

Прямые дороги для слабаков: как я работала техписателем, аналитиком, продактом и пришла в UX Моя двенадцатилетняя карьера в ИТ не похожа на настоящую карьеру. Скорее, это был поиск наилучшего применения себя в области, которая понравится больше остальных — и эту область тоже надо было сначала найти. Итак, место действия — Москва, время действия — с 2011-го по настоя...

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

Написание open source проекта на примере рендера для ttf шрифтов. Начало В данном проекте планируется создать парсер, а затем и рендер для шрифтов с расширениями TTF, OTF, TTC, OTC.Цикл данных статей является своеобразным блогом, но не обучающим. Наоборот я прошу об обратном отклике в виде комментариев.Данный влог - это опыт создания open source ...

Кратко про лидеров рынка Runbook Automation: Ansible, Puppet, и Chef Runbook Automation — это процесс использования специальных программных решений для автоматизации выполнения повторяющихся задач и процедур, которые в традиционных условиях выполняются вручную операторами IT-систем. RBA находит применение в автоматизации широкого спектра опер...

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

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

Проверка мужского здоровья, печать книги с постами из соцсетей – эти и другие российские стартапы 10 новых российских проектов для подбора ИТ-решений, общения в команде, внедрения партнерки в SaaS-сервисы, совместного выбора еды, автоматизации процессов и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую неделю публикуются лучшие онлай...

Применяем стандартные алгоритмы в C++. Семь примеров Привет, Хабр! Меня зовут Николай, я разработчик С++ в SimbirSoft. В этой статье я хочу поделиться своим опытом применения алгоритмов. Каждый из нас знает, что существуют алгоритмы стандартной библиотеки, и что они делают. Но не все и не всегда используют их. Я тоже их н...

Быстрое пополнение словарного запаса при изучении иностранного языка методом «Ознакомление-забывание-вспоминание» Привет, Хабр!В этой статье мы описываем полную методику быстрого пополнения словарного запаса при чтении неадаптированной литературы на иностранном языке. Статья будет интересна тем, кто владеет иностранным языком на уровне B2-С1 и столкнулся с необходимостью увеличить слова...

Применяем Java Sealed Classes на практике В этой статье применим Sealed Classes для улучшения читаемости кода, используя пример из реальной разработки. В статье используется Java 21 т.к. это первая LTS версия Java с релизным Pattern Matching. Также в примере используется Spring Boot, но этот подход можно использоват...

Где искать работу Go разработчику в 2024 году В поисках работы и фриланс-проектов для разработчиков Golang в 2024 году могут возникнуть некоторые сложности, особенно для новичков. Часто они сталкиваются с дилеммой: не знают, с чего начать, и чувствуют, что устроиться на работу в этой сфере практически невозможно. О...

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

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

CI/CD в каждый дом: сборочный цех базовых docker-образов Привет, Хабр.Последнее время DevOps и CI/CD де-факто стали повсеместным стандартом независимо от размера команды, в интернетах хватает статей, почему это важно, в чём собственно идея, полезных практик и других материалов. Я же решил подойти с несколько другой стороны и макси...

Библиотека Scout — быстрый и безопасный DI на Kotlin Привет! Меня зовут Александр Миронычев. Я занимаюсь инфраструктурой приложения Яндекс Маркет под Android. Около двух лет назад при работе над модульностью у меня появилось желание написать собственную библиотеку для внедрения зависимостей, которая позволила бы ускорить сборк...

О внутрикластерной маршрутизации через Istio Привет, Хабр! Я Степан, DevOps‑инженер, занимаюсь созданием CI/CD процессов с учётом проверки кода на безопасность, поддержкой и разверткой новых кластеров Kubernetes, соблюдением требований безопасности и созданием системы мониторинга и логирования — все это ...

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

Заменят ли LLM людей в разметке данных для AI? Привет! Использование ИИ в разметке данных для него же — уже скорее необходимая потребность, нежели что-то удивительно новое. Разного рода экспериментами с авторазметкой данных нейронками мы занимаемся последние полгода и результаты — нравятся.В данной статье я детально расс...

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

Как мы построили свой лунапарк (с блекджеком, разумеется) или опыт внедрения системы управления ИТ-проектами Привет, Хабр! На связи команда Проектного офиса НЛМК-ИТ. В жизни каждого Проектного офиса наступает момент, когда населяющие его менеджеры и другие сотрудники задумываются о внедрении системы управления проектами. Манящая простотой и выгодами идея редко обходится без подводн...

XMPP vs WebSockets: что использовать для приложения чата Если вы планируете разработать приложение для коммуникации в реальном времени, например чат, следует тщательно выбирать технологии. В этой статье Анастасия Иванова, технический писатель платформы МТС Exolve (входит в экосистему МТС), сравнивает два популярных инструмента — п...

Smart LED: Адресная LED подсветка с управлением через Алису В этой статье мы рассмотрим процесс создания умной светодиодной системы под названием Smart LED. Этот проект основан на микроконтроллере ESP8266 и адресной светодиодной ленте.Система Smart LED позволит вам не только наслаждаться красивой подсветкой, но&nb...

JWT-аутентификация при помощи Spring Boot 3 и Spring Security 6 Переход от базовых приложений к более сложным требует использования Spring Security для обеспечения безопасности. Новая версия, Spring Security 6, изменяет некоторые базовые реализации, а русскоязычных материалов на эту тему очень мало. В этой статье мы рассмотрим JWT-аутент...

Книга «Жемчужины разработки. Чему мы научились за 50 лет создания ПО» Привет, Хаброжители! Совершенное программное обеспечение невозможно создать без изучения накопленного опыта. Опыт — главный учитель, но медленный и нередко болезненный. Но зачем же нам повторять ошибки? Книга «Жемчужины разработки» поможет совершенствоваться быстрее и избе...

[Перевод] Делаем код-ревью правильно В начале своей карьеры я как-то работал над одним заказом, создавая платформу сентимент-анализа для социальных сетей. В то время Twitter ещё был Twitter’ом. Наша команда состояла из семи человек, среди которых я был джуниором. Мы были молоды и полны энтузиазма. Наш девиз мо...

Актуальные методы проверки работоспособности больших и высоконагруженных сетей. Протоколы мониторинга Привет, Хабр!В данной статье мы рассмотрим актуальные методы проверки работоспособности сетевого оборудования. Конкретно в этой статье мы поговорим про протоколы мониторинга. Статья является переваренным опытом компании Netopia, которая занимается разработкой программного о...

И снова про SIEM Решение класса SIEM уже давно стали неотъемлемой частью любой серьезной системы информационной безопасности. В этой статье мы поговорим о том, что такое SIEM, для чего они предназначены и как можно использовать решения с открытым исходным кодом.Итак, SIEM (Security informati...

Радикальная защита селфхостинга. Уровень: хардвар и хардкор Сейчас у многих есть свой личный сервер. Насколько вы задумывались о безопасности? Настроили вход по ssh-ключам, firewall и на этом всё? Давайте поговорим про РЕАЛЬНУЮ безопасность.Эта статья о том, как запариться, распилить свой ноутбук болгаркой, вставить туда микроконтрол...

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

Гауссов сплэтинг: как это выглядит Пример работы гауссова сплэтинга Всплеск внимания к технике сплэтинга связан с представленной в августе этого года статьей 3D Gaussian Splatting for Real-Time Radiance Field Rendering [Трёхмерный гауссов сплэтинг для рендера radiance field в реальном времени]. До этого, в и...

О Важном в управлении проектами Всем привет! Меня зовут Андрей Софронов и я тимлид продукта “ЭДО и S2P”. Хочу поделиться с тобой своим опытом и наблюдениями о том, что важно в управлении проектами, как можно посмотреть на проект и свою деятельность в целом, что следует учесть, что помнить и о чем позаботит...

Ландшафт угроз информационной безопасности последних лет. Часть 2 В прошлой статье мы поговорили тренды и эволюцию среди вредоносного ПО и программ-вымогателей. В этот раз хотелось бы рассмотреть оставшийся спектр наиболее распространенных и интересных угроз последних лет. Начнем мы с моей любимой социалочки, которая будет актуальна всегда...

Баги, которые наделали немало шума Реальный "баг", баг в коде или невнимательность — всё это может повлиять на ваш проект и привести к самым разным последствиям. В этой статье собран ряд масштабных и интересных багов. Время учиться на чужих ошибках! Читать далее

Разработка сайта на Тильде на примере реального проекта — подход и разбор решений по UX и UI Привет! Сегодня хочу поделиться опытом разработки многостраничного сайта и на конкретном примере рассказать, как действую, чем руководствуюсь и на что обращаю внимание с самого начала. Погнали. Читать далее

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

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

Проект Альфа-Бизнес Mobile Web (веб-приложение), или Что делать если AppStore — всё? Начиная с ведения санкций в 2022 вниманием не обошел и банковский сектор. Сказалось это и на возможности вести разработку и обновлять банковские приложения в Google Play и AppStore. Если ограничение Google Play можно обойти через множество альтернативных сторов или, на худой...

ТОП-7 статей на Хабр по Кубернетесу Перенос приложения на Kubernetes может быть связан с определенными сложностями, знать о которых лучше заранее. Собрали для вас дайджест лучших статей Хабра по k8s. Читать далее

Мой краш-тест чемпионата: Победа в Data Science треке Привет! В статье я расскажу о моем опыте победы в чемпионате "CUP IT 2023" от Changellenge в области Data Science. Соревнование построено на кейс-подходе, где участники решают реальные бизнес-вызовы, с которыми сталкиваются сотрудники компаний VK и Альфа-Банка. Я успешно спр...

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

Основные настройки для управления ресурсами в PostgreSQL: настройка памяти, CPU и I/O Привет, Хабр!При работе с PostgreSQL (да и в целом с любой БД) важно правильно настраивать и управлять ресурсами, такими как память, процессорное время и дисковые операции, и так далее для обеспечения лучшей производительности и стабильности работы БД. В этой статье мы как р...

[Перевод] Особенности управления реальными устройствами с точки зрения backend разработчика. Часть 1. Разработка на стенде Началось всё с того, что я захотел повысить мощность двигателя автомобиля установкой компрессора.В процессе понадобилось разобраться с Arduino и написать алгоритмы автоматического управления реальными устройствами, формально - управление всего одним моторчиком, но на практик...

Mobile Web, навигация и при чем тут Nginx Привет, Habr! Я frontend-разработчик в Альфа-Банк. В статье я хотел бы поделиться опытом внедрения мобильной версии web приложения «Альфа-Бизнес» в нашу архитектуру. А точнее — как без массовых доработок 100 фронтовых сервисов мы заставили работать mobile web версию с новой ...

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

О разжиревшей ИС «Управления проектами» или как мы боролись с ограничениями SharePoint в legacy проекте В этой статье мы опишем наш опыт работы с очень большой системой управления проектами, реализованной на SP, с какими ограничениями мы столкнулись и как добились похудения данной ИС. Читать далее

История одной уязвимости в Google Chrome Эта статья посвящена уязвимости, которую мне удалось обнаружить в браузере Google Chrome в конце прошлого года, а также рассказывает об истории её возникновения. Уязвимость существовала в течение продолжительного периода и была устранена 31 октября 2023 года. Компания Google...

Как мы интегрировались в казахстанский маркетплейс или история о нюансах Привет! Меня зовут Ваня Крючков, я бэкенд-разработчик в Далее. Сегодня поделюсь опытом интеграции интернет-магазина Haier с маркетплейсом Kaspi. Это история о том, как, несмотря на ограничения и не самое удобное API, нам удалось интегрироваться с самым популярным маркетплейс...

Kodein DI для Android. KMP и Compose Быть в авангарде в разработке — жизненная необходимость. Поэтому многие проекты уже переходят на Jetpack Compose, а самые смелые и продвинутые даже выпускают приложения на KMP. Мы в проекте Дринкит тоже активно переходим на Jetpack Compose (с KMP пока не сделали подход).Ну и...

О, вы из Англии? Локализация Ozon Seller на iOS Всем привет! Меня зовут Андрей, и я делаю iOS-приложение для продавцов Ozon Seller. Наша команда поставляет фичи, красит кнопки, работает над перформансом и  всячески улучшает пользовательский опыт работы продавцов на Ozon.Нашим приложением активно пользуются юзеры из р...

Разбираемся в BIA: популярные вопросы и неочевидные кейсы Анализ воздействия на бизнес (BIA, Business Impact Analysis) — один из фундаментов управления непрерывностью бизнеса, который, как кажется, позволяет решить основные вопросы: оценить потери от простоя критичных процессов, выделить эти критичные процессы, узнать, от чего зави...

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

Экстремальные практики программирования: что, как и зачем Всем привет! Меня зовут Сергей Бережной, я работаю в Яндексе уже 18 лет: в 2005 году пришёл разработчиком интерфейсов, потом руководил подразделениями разного размера, а сейчас я директор по взаимодействию с разработчиками. Ещё я много занимаюсь обучением: в рамках наших сез...

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

Django, PostgreSQL, Gunicorn/uWSGI, Nginx Подробное описание шагов при деплое web-проекта на Django с PostgreSQL, Nginx, Gunicorn. Задачи статьи - агрегировать информацию из мануалов по деплою, избавить читателя от повторений ошибок и описать теоретически, для чего делаются те или иные шаги, чтобы избежать бездумног...

Как мы запускали DIY-медиа для ИТ-специалистов Привет, Хабр! Меня зовут Юлия Гусарова, я директор по маркетингу beeline cloud. В октябре мы запустили проект вАЙТИ. В этой статье я и мои коллеги расскажут о том, как мы придумывали концепцию DIY-медиа и чем оно отличается от других площадок. А еще — поговорим о том, как ус...

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

Наш опыт интеграции внешних DevOps-команд в команды клиента: этапы, процессы, трудности, неочевидные нюансы В этой статье я расскажу, как DevOps-инженеры «Фланта» интегрируются в команду клиента и по каким правилам мы работаем, чтобы сотрудничество было комфортным для всех. Мы пройдемся по каждому этапу внедрения и разберем основные принципы, проблемы и риски при интеграции сторон...

Как управлять состоянием телеграм-бота Привет!Управление состоянием - это фундаментальный аспект создания телеграм-ботов, позволяющий нам эффективно управлять взаимодействием с пользователями и предоставлять более персонализированный опыт.Управление состоянием - это концепция, которая делает весь процесс взаимоде...

Жажда скорости. Сравниваем работу Hashcat на ВМ, ПК и ноутбуках с разными CPU и GPU Безответственное отношение к учетным данным — проблема, которая встречается часто и даже в крупных компаниях. Вот почему важно проводить аудиты «‎стойкости» паролей сотрудников. Один из вариантов такой проверки — прогон учетных данных по утекшим базам через хэши. Но обычно п...

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

Камера как сканер штрих-кодов: проблемы, инструменты и эксперименты Всем привет, меня зовут Никита, я старший разработчик в компании Озон и работаю над iOS-приложением «Пункт Озон».«Пункт Озон» — это мобильное приложение для работников и менеджеров пункта выдачи заказов (далее просто ПВЗ). В приложении множество различных разделов для повсед...

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

Сканер URL-адресов в Chrome теперь работает в реальном времени Google Chrome переходит на «новый уровень безопасности сайтов» благодаря обновлению функции Safe Browsing в режиме реального времени. Больше не будет красных предупреждающих экранов, основанных на устаревшей информации — теперь Chrome будет проверять URL-адреса по постоянно ...

Сам себе ментор: что ещё делать, кроме работы, чтобы подрасти Привет, меня зовут Кирилл Павлик. Я ведущий JS-разработчик в Альфа-Банке, «25 лет» в вебе, но 4 года реального опыта. И переходя в этот ваш айти, понял, что проявление некоторых активностей, которые настолько очевидны и всем понятны, что их даже не пишут в должностных инстру...

Поиск пути в ВГД-лабиринте Проанализируем поиск кратчайшего пути в некотором лабиринте. Из каждой клетки этого лабиринта можно ходить в соседние по горизонтали, по вертикали и по диагонали. Стоимость прохода по горизонтали или по вертикали равна единице. Стоимость прохода по диагонали равна корню квад...

Хабр — стоп кран(восклицательный знак) Кто у нас там насегодня за главного? Денис? Алексей?Давайте поговорим по-честному. Мы все прекрасно понимаем, что СММ и генеративный контент сводят Хабру в могилу. Я не люблю просто блеять о проблемах, и хотел бы предложить решение. Давайте сделаем что-то, чтобы разобраться ...

Хотите похудеть – НЕ спрашивайте меня как. Часть 2: Оземпик — опыты на себе Кратко для лиги лени: Оземпик как средство для похудения работает, но ограниченно годится для ИТ, и дает осечки примерно 50 на 50 побочки.В первой части я попробовал рассмотреть хоть как-то эффективные методы, кроме «надо меньше есть». Это вторая, с личным опытом по применен...

[Перевод] Обзор статьи «StreamDiffusion: конвейер для интерактивной генерации в режиме реального времени» StreamDiffusion — это новый диффузионный конвейер для интерактивной генерации изображений в режиме реального времени, позволяющий добиться более высокой производительности для прямых трансляций и других подобных сценариев. Он заменяет традиционное последовательное шумоподавл...

Просветлённый выживший: кто такой фичекрайний и зачем это всё разработчику? Меня зовут Игорь Буняков, я был фичекрайним за реалистичные дороги в 2ГИС. Недавно они вышли в навигаторе, а позже будут доступны в режиме карт на мобильных устройствах и на 2gis.ru. Реалистичные дороги оказались невероятно большими, невероятно сложными, невероятно красивыми...

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

Калькуляторы с обратной польской нотацией На хабре уже многократно проскакивали статьи и переводы о калькуляторах с обратной польской нотацией. Раньше я придавал им большого значения, пока на глаза не попался перевод статьи «Мягкое знакомство с дополнительным кодом», где фигурировал программистский калькулятор HP-1...

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

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

Revopoint MINI: реальный кейс из стоматологии После проведенных мной обзоров на MINI («Сравнение 3D сканеров Creality CR-Scan Ferret и Revopoint MINI для хобби с намеком на профессиональное применение» и «Создание архива 3D моделей в стоматологии с помощью Revopoint MINI») настало время попробовать данный 3D-сканер для ...

Великая Октябрьская Киберреволюция. Расследование: как закончилась власть народа на Pikabu. Бунд 5 месяцев я писал свои статьи в том числе для Пикабу. 7 моих постов в горячем суммарно набрали 14 266 плюсов и 824 400 просмотров. На Хабр шло то, что проходило по тематике. А 5 октября мой аккаунт отправили в “теневой бан”, коммерческий директор Пикабу назначил мне стрелку ...

Apple Vision Pro: обзор платформы и создание первого мобильного приложения Привет! Меня зовут Андрей Груненков, я iOS - разработчик в агентстве InstaDev. Делаем мобильные приложения, которые помогают бизнесу расти. В этой статье я расскажу о том, как разработать первое мобильное приложение для платформы Apple Vision Pro.Для начала надо сказать пару...

Мёртвое время. Как не ошибиться при настройке ШИМ в Renesas Synergy Продолжение разработки сервоконтроллера MC50. В предыдущем проекте управления DС мотором специалисты в комментариях высказали сомнения относительно способа изменять состояние линий ШИМ путём переназначения функций портов в реальном времени. Этот способ был применён в связи с...

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

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

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

Как нейросети сегодня влияют на то, что мы будем смотреть завтра Когда я в детстве читал про искусственный интеллект и роботов, то думал, что роботы будут чистить снег, а человек — заниматься творчеством. Но реальная картина мира оказалась суровее — люди убирают снег, а ИИ занимается творчеством.С декабря 2022 года на платформе Twitch в р...

Облачное логирование, Телеграм-бот для планирования путешествий с ИИ – эти и другие российские стартапы 10 новых российских проектов для управления заметками и задачами, рекламы у блогеров, просмотра превью ссылок, быстрого обмена контактами на выставках и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервисы ...

Кейпад для управления умным домом — проект выходного дня После апгрейда обычного дома до «полуумного» появилась очень простая, но неочевидная проблема в виде удобства управления домом. У тебя может быть самый крутой в мире дашборд с кучей кнопок, датчиков и остальных интересных элементов, но управлять всем этим с телефона банальн...

Как мы выстроили процесс работы с макетами Меня зовут Алина Шилова, я работаю системным аналитиком над внутренними продуктами Tele2. Вот уже два года наша команда занимается разработкой портала для сотрудников компании. Специально для создания платформы была набрана команда. За 10 лет работы в ИТ-сфере это был мой пе...

Видео-сообщение как в Telegram. Часть третья — Контролы и раскрытое состояние Часто ли вы пользуетесь Telegram?Если да, то скорее всего вы хотя бы раз отправляли "кружочки". В этой серии статьей мы напишем небольшой проект с отображением списка видео-сообщений.Для отображения будем использовать ExoPlayer, настроим сохранение видео в кеш, а также напиш...

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

Запуск ОСРВ Embox на Banana Pi M1 Об этой операционной системе я узнал на данном ресурсе, из многочисленных публикаций её разработчиков. Для тех кто не в курсе - это отечественная операционная система реального времени для встраиваемых устройств с открытым исходным кодом. Её официальный репозиторий расположе...

Поддержка диалекта YDB в инструменте миграции Liquibase В этой статье мы подробно рассмотрим процесс интеграции одного из наиболее известных и широко используемых в мире Java инструментов для управления миграциями - Liquibase - с YDB. Читать далее

Формула идеального IT-ивента Привет, на связи Хабр!Мы видим, что компании часто публикуют анонсы ивентов для айтишников, а вы, читая их, наверняка думаете: «вроде бы неплохо, но вот если бы это было… (офлайн/покороче/подешевле/на Багамах и т.д.), тогда бы сходил». Нам стало интересно: каким должен быть ...

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

Генерация лендинга при помощи ИИ, управление крипто-портфелем на «автопилоте» и другие российские стартапы 10 новых российских проектов для запуска рекламы на Twitch, перевода незнакомых слов в субтитрах на YouTube, поиска корта или пары для занятий большим теннисом, мониторинга маркетплейсов и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую ...

Модульность в JavaScript: CommonJS, AMD, ES Modules Привет, Хабр!Начало истории в модульности в JavaScript положил хаос: глобальные переменные, конфликты имен и сложности с зависимостями. Со временем сообщество предложило несколько подходов для организации модулей, начиная от CommonJS, которое легло в основу Node.js, до AMD, ...

Основы Rust: синтаксис и структуры данных Привет, Хабр! Rust - это язык, который становится плюс-минус более популярным в последние годы благодаря своей высокой производительности и безопасности. Он был разработан Mozilla и сообществом разработчиков с целью предоставить инструмент для системного программирования, ко...

Логирование в Golang Привет, Хабр!Как в Golang логирование поживает? Рассмотрим этот вопрос в статье.Рассмотрим основные библиотеки и подходы. Читать далее

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

[recovery mode] Просто об архитектуре в Android В нашем скромном мире разработки Android есть общепринятый подход к проектированию приложений - Clean Architecture, который рекомендуется Google. Несмотря на множество статей, посвященных этому стандарту, вопросы и споры вокруг того, как "правильно готовить" Clean Architectu...

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

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

Топ-3 причины, почему вы должны использовать Copilot Всем привет! Меня зовут Анатолий Барцев, я frontend-разработчик в команде Модерации Циан. Я решил протестировать Copilot, чтобы оценить, полезен ли он для реальной разработки. В статье расскажу, какие выделил для себя плюсы использования, а также покажу, как GitHub Copilot п...

Что такое Data Service и почему он может быть вам полезен Привет, Хабр! На связи группа экспертов по управлению данными из МТС.А именно: Патрисия Кошман — руководитель группы (управление метаданными) и Аксинья Ласкова — эксперт по практикам качества данных.Сервисы МТС собирают огромное количество данных разных типов и качества, нач...

Превращаем обычный электросчетчик в умный: продолжаем осваивать Samsung SmartThings Вам не кажется, что вручную переписывать цифры с ЖК-экрана на электросчетчике каждый месяц - это немного странное занятие? Все слышали про умные электросчетчики, но не все готовы заплатить несколько тысяч (а счетчик с дистанционным снятием показаний стоит как минимум 15000 р...

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

Старые песни о главном и pig butchering Забавно, но факт, как спустя многие годы мы наступаем на одни и те же грабли. И когда всё-таки наступит тот момент, когда эти сельскохозяйственные инструменты закончатся на нашем пути? Или мы, по крайней мере, начнём их замечать?Как я уже не раз упоминал в своих статьях, мен...

Как необычные решения приводят к критическим уязвимостям. Или история одного бага, найденного в CloudTips Привет, Хабр! В данной статье хотел бы поделиться историей, как был найден достаточно простой в исполнении баг, но приводящий к опасной уязвимости веб приложения. Данный баг был найден в сервисе CloudTips от Тинькофф и CloudPayments на BugBounty площадке app.bugbounty.bi.zon...

Малоизвестные детали реализации Math.Round() в .Net Недавно довелось разбирать багрепорт одного клиента на нашу программу, где клиент указал на ошибку в отчете в одну копейку.Казалось бы, сложно себе представить программиста или вообще IT-шника, который не знает как работает функция округления. Тем не менее, почти двадцатилет...

Edge ML для людей с ограниченными возможностями С развитием технологий появились новые возможности для людей с ограниченными возможностями. Edge Machine Learning (Edge ML) представляет собой передовую технологию, которая приближает алгоритмы машинного обучения к источнику данных, что сокращает задержку и улучшает возможно...

Это мы юзаем: библиотека Optuna в Python для оптимизации гиперпараметров Привет, Хабр!Гиперпараметры — это параметры, которые не учатся в процессе обучения модели. Они задаются заранее. От выбора гиперпараметров напрямую зависит качество и эффективность модели, а их оптимизация может улучшить результаты предсказаний.Традиционный подход к оптимиза...

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

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

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

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 5 Хабр, я снова пришёл к вам с практическими советами про доступность вместе с Ильёй. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке. Сегодня мы рассмотрим следующие ас...

LeadHub Сравни: как лиды придумывают точки роста для процессов в компании Давайте соберём вместе лидов разработки, вместе подумаем и обсудим, что и как нам улучшить в наших процессах, договоримся об ответственных, после пойдём сделаем эти улучшения, будем практиковать подобное на регулярной основе.Звучит отлично – в теории.На практике из собравших...

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

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

Тест-дизайн на практике: комбинируем разные техники тестирования, на примере проверки систем оплаты Привет, Хабр! Меня зовут Сергей, я тестировщик в “Петрович-Тех”. В этой статье хочу поговорить о комбинировании различных техник тестирования и поделиться опытом тест-дизайна для проверки системы оплаты.На всем своем профессиональном пути тестировщика я так или иначе всегда ...

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

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

Typescript: лучшие практики Привет

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

[recovery mode] MindVault: маленькая революция в flash карточных приложениях Здравствуй хабр! Я всегда мечтал создать идеальное приложение для обучения и запоминания информации, пытался понять как в целом работает память, насколько хорошо она может работать, от чего и как это зависит, в этой статье мы посмотрим что на данном этапе я достиг, или быть ...

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

XeLaTeX для оформления текстов: Текст, рисунки, таблицы, автоматизация В статье рассмотрим пример того как в XeLaTeX можно настроить форматирование отдельных элементов текста, автоматически создавать таблицы, рисунки. В первую очередь будет интересна тем кто собирается оформлять ВКР (выпускная квалификационная работа) бакалавра или магистра, пи...

Чуда не произошло: «китайский» 5-нм процессор Kirin 9006C выпускала фабрика TSMC В конце прошлого года на Хабре публиковалась новость о том, что компания Huawei представила ноутбук Qingyun L540 с процессором Kirin 9006C. О его происхождении, т. е. компании, которая поставила чипы, не было известно, но ряд СМИ сделал предположение, что всё это удалос...

Пошаговая инструкция создания нового вида контроля в «1С: Управление холдингом» Привет, Хабр! Меня зовут Донскова Елена, я работаю разработчиком на проектах внедрения 1C в IBS, занимаюсь разработкой нового функционала и модифицирую типовой функционал для удовлетворения потребностей бизнеса. Сегодня я расскажу о том, как создать новый вид контроля в сист...

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

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

Разработка опросов для анализа Customer Effort Score (CES) Customer Effort Score (CES) — показатель, который измеряет усилия, приложенные клиентом для взаимодействия с компанией или использования продукта/услуги. Этот показатель становится не просто числом, а ценным инструментом в руках бизнеса для оптимизации процессов и повышения ...

Бионические предплечье и кисть: позиционирование многосуставного манипулятора наклоном головы Всем привет! В предыдущей статье Позиционирование бионического предплечья взглядом / Хабр (habr.com) мы обсуждали алгоритм для позиционирования бионического предплечья. В этот раз мы пойдем чуть дальше (на один сустав), добавив к предплечью кисть, и рассмотрим алгоритм, с по...

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

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

GetSiteCopy — бот для свободного доступа к статьям заблокированных СМИ Недавно в соседнем блоге на хабре писали про Amnezia VPN, self hosted решение, устойчивое к блокировкам. Это проект был изначально разработан на хакатоне Demhack, который объединяет проекты в области приватности и свободы интернета. Потом он прошёл акселерацию в Privacy Acce...

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

[Перевод] Какой длины должны быть классы — когда «чистый» код на самом деле не так уж и хорош Привет, Хабр!Наши коллеги из beeline cloud подкинули интересную статью для перевода про разработку на PHP, плохие практики и не только. Это история о том, как правила чистого кода могут подорвать его фактическое качество. Материал содержит много рассуждений на эту тему и буд...

Redux vs Mobx кого же выбрать для React-приложения в 2024 году? Привет, Хабр!Сегодня я хочу поделиться с вами своими размышлениями о том, какой стейт менеджер лучше использовать для разработки приложений на React в 2024 году. Как вы знаете, React — это одна из самых популярных и мощных библиотек дл...

Внедрение практик и принципов DAMA-DMBOK2 как предпосылки к использованию ИИ в бизнес-процессах организаций 28 сентября компания РСХБ‑Интех провела RSHB Data Integration Meetup — митап для специалистов по работе с данными, в рамках которого выступил Антон Агеев, корпоративный архитектор и техлид команды Подписки в проекте «Свой бизнес» РСХБ‑Интех. В своем докла...

Эффективные Практики Подготовки к Code Review В этой статье мы исследуем эффективные практики для разработчика, отправляющего свой код на ревью. Эти практики не только упростят жизнь ревьюеру, но и помогут извлечь максимальную пользу из этого опыта и значительно сократят time‑to‑market.Мы н...

Простой и сложный Always On VPN от Microsoft. Опыт внедрения VPN обеспечивает доступ удаленных пользователей в корпоративную сеть. Решений много, но выбор оптимального не всегда очевиден. В данной статье хотел бы поделиться опытом внедрения и использования такого продуктового решении как Always On VPN от компании Microsoft. Подчеркну,...

Оптимизация работы с Camunda на основе External task Привет! Меня зовут Андрей, я - ведущий разработчик в "РТК ИТ". В этой статье речь пойдет об опыте перехода на паттерн external task в одной из наших систем.Camunda — это BPM-движок для автоматизации бизнес-процессов. Она представляет собой набор библиотек, которые и позволяю...

Хотел устроиться Python-разработчиком, стал мидлом в QA-отделе — как я искал первую работу Привет! Меня зовут Юра, и в этой статье я хочу поделиться своим опытом поиска работы. И это вряд ли блестящая история успеха — на этом пути нашлось место и самым неожиданным факапам, и офферу от галеры, и отчаянию. Спойлер: на работу я всё-таки устроился, хоть и совсем не в ...

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

Cisco TRex на практике В этой статье описывается процесс работы с программным генератором сетевого трафика TRex. Этот инструмент предназначен для генерации различных типов сетевого трафика и анализа данных в режиме реального времени. Trex поддерживает работу на уровнях MAC и IP, позволяя пользоват...

Fuzzing-тестирование. Практическое применение Привет, Хабр! Меня зовут Никита Догаев, я Backend Team Lead в команде Контента на портале поставщиков Wildberries. Мы отвечаем за карточки, которые каждый день испытывают на прочность сотни тысяч продавцов из разных стран.В статье поделюсь своим опытом применения фаззинга дл...

Метод быстрого марша (Fast Marching Method) Пример реализации метода быстрого марша(Fast Marching Method) для создания полей расстояний(Distance FIeld) и поиска кратчайшего пути. Читать далее

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

Что такое The Festival Floppies и причём здесь Джон Ромеро и SimCity Вы когда-нибудь мечтали о том, чтобы найти сокровище? Люди, читавшие в детстве романы, такие как «Пираты южных морей» Говарда Пайла или «Дети капитана Гранта» Жюля Верна, живо могут себе представить сокровище в виде тяжёлого деревянного сундука с металлическими полосами, наб...

«Физика для программистов» — как физтехи применяют её в приложениях. Бросок объекта под уголом к горизонту Данная статья входит в цикл, освещающий задачи на моделирование физических процессов на факультете МТФИ ВШПИ. Мы написали приложение на Flutter и сайт на React для моделирования броска, расскажем о нашем опыте в этой статье. Читать далее

MLOps в билайн: как катить машинное обучение в production без ML-инженеров. Часть I Всем привет! Меня зовут Николай Безносов, я отвечаю за применение и развитие машинного обучения и продвинутой аналитики в билайне. В одной из прошлых статей мои коллеги рассказывали о месте Seldon в ML-инфраструктуре компании, а сегодня мы поднимемся на уровень выше и погово...

Сравнение генеративных нейросетей на реальной задаче: Jasper AI против ChatGPT 4 c BotHub Hola, Хабр. Я — технический и маркетинговый писатель «в одном флаконе». Пишу примерно 40% технических текстов, а 60% — это маркетинговые тексты о продуктах. На основе опыта 2-х лет работы с нейросетью Jasper AI + Jasper Art, решил сравнить эту нейронку с ChatGPT 4 при написа...

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

[Перевод] Что не так с управлением поставками? Меня не покидают размышления — что на самом деле значит быть Delivery Manager-ом? И почему мой опыт в этой роли часто расходится с опытом и ожиданиями других? Читать далее

Библиотека на Go для работы с RuStore API Привет, Хабр!Меня зовут Энрике, и я работаю Go-разработчиком в RuStore. Сегодня хочу рассказать про библиотеку на Go для комфортной работы с API магазина приложений RuStore. Иногда авторизация через API и получение JWE-токена занимают больше времени, чем хотелось бы. С ...

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

[Перевод] Миграции в YDB с помощью «goose» Любой более или менее серьезный продакшен, работающий с базой данных, подразумевает процесс миграции - обновление структуры базы данных от одной версии до другой (обычно более новой) [источник].Миграции в БД можно делать вручную или использовать для этого специальные утилиты...

Аутентификация go с использованием токенов PASETO В этой статье мы напишем небольшой сервис аутентификации на go с использованием токенов PASETO. Этот токен можно использовать вместо JWT для процесса аутентификации. Если хотите узнать о PASETO подробнее, то можете почитать статьи на Хабре или гитхабе. Читать далее

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

Как AI помогает повседневной работе команды разработки Статья ориентирована на читателя, который еще сомневается в том, стоит ли ему пробовать чат‑боты в работе. Если вы знакомы с технологией и пробовали её в повседневной деятельности то вряд ли найдете её полезной.Немного расскажу о реаль...

.NET+Safeguard: Реверсинг без ассемблера Сегодняшняя статья будет посвящена реверсингу приложений, написанных с использованием фреймворка .NET. Сначала мы немного поговорим о том, что такое .NET, чем код на нем отличается от других сред разработки и затем разберем один обфусцированный Crackme, попутно рассмотрев ря...

Корутины C++ для чайников: пишем асинхронный веб-клиент Написать этот материал меня побудило... отсутствие хороших статей по корутинам в C++ в русскоязычном интернете, как бы странно это не звучало. Ну серьезно, C++20 существует уже несколько лет как, но до сих пор почти все статьи про корутины, что встречаются в рунете, относятс...

GitHub Copilot в JetBrains IDEs в РФ В 2022 году в публичный доступ вышел GitHub Copilot – довольно удобный современный инструмент для разработчиков. В этой короткой статье поделюсь своим опытом взаимодействия с GitHub Copilot, а главное тем, как его использовать в IDE от JetBrains. Приятного чтения! Читать дал...

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

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

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

Дообучение ruGPT-3.5 13B с LoRA Добрый день, уважаемые читатели и авторы Хабра!Сегодня я рад представить вам подробное руководство по обучению модели ruGPT-3.5 13B с использованием датасетов модели Saiga-2/GigaSaiga, технологии Peft/LoRA и технологии GGML. Эта статья призвана стать полезным и практичным ре...

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

Отключаем ненужный функционал плагина для Jira с помощью кастомной аннотации Spring Привет, Хабр! Меня зовут Игнат, в Samokat.tech я пишу плагины, автоматизации и интеграции для Jira. Как разработчик-самоучка, который до «вот этого всего» немного писал на Java, но не пользовался ни средствами сборки (привет, Maven!), ни фреймворками (привет, Spring!), ...

Безопасный интернет через Termit: 11 шагов для развертывания СТД Привет, Хабр! Сегодня мы подробнее поговорим про Termit 2.1 —  систему терминального доступа. Она предназначена для организации удаленного доступа конечных пользователей к приложениям, опубликованным на терминальных серверах. В этой статье я расскажу о том, как мы делал...

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

Privacy Manifest: что нужно о нём знать для внедрения в проект На работе я столкнулся с задачей внедрения Privacy Manifest в проект. Изучение вопроса началось с прочтения документации Apple, а продолжилось просмотром WWDC-сессии на тему конфиденциальности. После внедрения оказалось, что для корректной работы над задачей нужно изучить бо...

[Перевод] Как мне удалось обнаружить уязвимость, связанную со слабыми ключами в Debian Для новичков в сфере информационных технологий может быть открытием, что в следующем месяце мы отметим 16-ю годовщину одного знаменательного события: было выявлено, что в течение 18 месяцев пакет OpenSSL в Debian вырабатывал полностью предсказуемые приватные ключи, что в то ...

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

Реверс и анализ Keyzetsu Clipper Недавно я увидел новость о появлении на GitHub фальшивых репозиториев, которые обманом заставляют жертв скачивать вредонос, угрожающий безопасности их криптоактивов. Вредонос называется Keyzetsu Clipper, и в тот момент мне очень захотелось узнать, ка...

Цифровой паспорт оборудования промышленного производства Привет, привет! Представлюсь: меня зовут Тамара, и я являюсь ведущим инженером по нормативно-справочной информации в компании Bimeister.Начну с того, что это лишь малая часть той большой истории, которую я хочу вам рассказать.Будет много вопросов типа «Что это?», «Для чего н...

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

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

Основы полнотекстового поиска в ElasticSearch. Часть третья Это третья и заключительная статья из цикла, в которой рассмотрим стандартную модель ранжирования документов в Elasticsearch.После того как определено множество документов, которые удовлетворяют параметрам полнотекстового запроса, Elasticsearch рассчитывает метрику релевантн...

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

Range Loop в Go: подводные камни, как с ними бороться и что нас ждёт в версии 1.22 Привет, Хабр! Меня зовут Рафаэль Мустафин, я ментор на курсе «Go-разработчик» в Яндекс Практикуме. Эта статья посвящена нюансам цикла range в Go. Мы рассмотрим распространённые подводные камни, лучшие практики и интересные изменения, ожидаемые в Go 1.22. Читать далее

Когда телефоны были большими…   На днях прочитал прекрасную статью https://habr.com/ru/articles/773780/ по использованию древнего контроллера i4040 для вычисления числа Пи. Искусство в чистом виде, браво.   Это совпало с необходимостью освобождения помещений у нас для нового прое...

Полиномиальные корневые методы синтеза САУ ч.1 Ленонид Маркович Скворцов. Широко известный в узких кругах математик, профессионально занимающийся математическами проблемами автоматического управления. Например, его авторские методы использованы в SimInTech. Данный текст первая часть работы, которая еще готовится к публи...

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

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

Эволюция BP-сервиса компании Магнит Как на сервисе весом в 10 ТБайт ежедневно обрабатывать 1 Тбайт пользовательских данных и спать спокойно.В статье описана эволюция системы управления процессами в компании «Магнит». Некоторые детали были упрощены для лаконичности и последовательности повествования, некоторые ...

Из Windows 11 неожиданно убирают Windows Subsystem for Android. Что происходит и почему? Не так давно на Хабре публиковались оптимистичные новости относительно интеграции Windows Subsystem for Android (WSA) в операционную систему Windows. В частности, говорилось, что в Windows Store стали доступны Android-приложения, которые можно запустить на устройстве под упр...

Автоматические двери: История создания. От механики до магнитной левитации В какой степени прошлое может «объяснить» настоящее, и предсказать будущее? Почему автоматические двери появившиеся в рекламных каталогах производителей в 1910 году, начали использоваться лишь в конце 20 века. В этой статье мы рассмотрим историческую ретроспективу появл...

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

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

7 примеров ИИ, которых не хватает прямо сейчас Писать статьи для блога вместо авторов? Генерировать картинки на сайт вместо веб-дизайнеров? Дописывать код за стажерами, которые активно вкатываются в IT после трех месяцев обучения на каких-нибудь курсах? Этим уже никого не удивить.Но ведь у нейросетей есть и более интерес...

Ыыыы ыыыыыыыыыы с помощью AmneziaЫЫЫ Ну что теперь будем писать про VPN вот так? Кстати, в Китае вместо слова VPN вы часто можете встретить "Science Online"(科学上网),  “ladder”(梯子), или  “Internet accelerator”(上网加速器), все это обозначает VPN. В России, кажется еще все не так плохо, но это не точно. С...

Оптимизируем параметры запуска приложения Spark. Часть первая Привет! Меня зовут Андрей Чучалов, я работаю в билайне, и в этом посте я расскажу про оптимизацию параметров запуска приложений в Spark, поиск проблем и повышение производительности. Разберем запуск приложений Spark в базовой и расширенной версиях, покажу методы расчёта осно...

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

pgvector: как хранить и обрабатывать многомерные вектора в PostgreSQL На Хабре было много упоминаний pgvector в обзорах Postgresso. И каждый раз новость была про место которое где-то за границей и далеко. Многие коммерческие решения для хранения и поиска векторов в базе данных нынче не доступны, а pgvector доступен любому, тем более в самой по...

Apache Flink: динамическое определение выходного топика в Kafka Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Мы начали использовать фреймворк Apache Flink, и я решил поделиться на Хабре своим опытом внедрения этой технологии в цикле статей.В предыдущей статье — «Apac...

Как мы внедряли каталог данных DataHub и искали компромисс между BI, DWH и ИБ Счастлив тот аналитик, у которого в компании есть дата-каталог — единая точка входа для поиска информации о данных невероятно экономит время, data lineage выстроен, а уровень заполненности документации на высоком уровне. Чтобы это были не только мечты, наша команда анал...

Детальный React. Реконсиляция, рендеры, Fiber, виртуальное дерево В сети можно найти огромное количество статей, мануалов и книг по основам React, включая официальную документацию от разработчиков. В этой статье мы не будем писать HelloWorld и изучать общеизвестные концепции. Сегодня мы заглянем под капот библиотеки и попытаемся понять, ка...

DECT: как покрыть беспроводной телефонией склад размером с три футбольных поля DECT — стандарт беспроводной IP-телефонии, альтернатива Wi-Fi-телефонии и сотовой связи. У него много применений, но для покрытия больших площадей со сложной планировкой (для ритейла, производства) он вне конкуренции.В статье я сравню разные решения для беспроводной телефони...

Как сделать поиск в интернет-магазине Привет, Хабр! Меня зовут Степан Родионов, я из Х5 Digital. Сегодня расскажу о поиске в интернет-магазине — типовой задаче для e-commerce, которая в теории имеет типовое решение, но на практике оказывается сложнее.Я запускал около десятка e-commerce проектов, и в каждом из ни...

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

Экономим на Kubernetes с помощью OpenCost — и другие прелести FinOps Вне зависимости от того, кто вы: небольшой стартап или развитая компания — задача управления затратами особенно важна. Модное понятие FinOps, оно же Financial Operations или Cloud Financial Operations, помогает организациям наиболее эффективно и экономически выгодно использ...

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

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

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

NET hosting. Обзор вариантов и пример деплоя приложения Приложения Dotnet и Mono можно развернуть на сервере разными способами. В статье мы рассмотрим специализированные решения для хостинга dotnet приложений и предоставим инструкцию по развертыванию, написанную на конкретном примере. Читать далее

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

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

[Перевод] Анонс Asserts Представляем вам Asserts — платформу для анализа и отслеживания метрик. Сканируя метрики вашего приложения в любой совместимой с Prometheus базе данных временных рядов (time-series database, TSDB), Asserts в реальном времени: — создаёт карту архитектуры приложения и инф...

JIRA + AI = LOVE или Как Product manager-у найти друзей и перестать страдать Развитие AI-инструментов на базе современных LLM запустило в последние годы тренд на автоматизацию всего, что прибито меньше, чем на 2 гвоздя, и первыми адоптерами здесь традиционно выступает IT сообщество. Как Луи Пастер некогда ставил себе и друзьям намешанные на голой кол...

Как я создавал мобильное приложение для хранения прочитанных книг BookDesk Всем привет! Меня зовут Александр, мне 33 года и я React-разработчик (10 лет опыта во фронтенде), я из Беларуси.Я хочу рассказать о моем опыте создания мобильного приложения для хранениях прочитанных книг BookDesk.Все началось еще в 2020 году, когда началась пандемия коронав...

Бенчмарк HTML парсеров в Python: сравнение скорости Привет, Хабр!Меня зовут Вадим Москаленко и я разработчик инновационных технологий Страхового Дома ВСК. В этой статье хочу поделиться с вами информацией по проведенному сравнению производительности нескольких популярных библиотек для простого HTML-парсинга.При необходимости с...

Adobe представила приложение Firefly AI для Apple Vision Pro Компания Adobe объявила, что ее инструмент искусственного интеллекта Firefly, используемый, например, в Photoshop для генерации изображений, теперь стал доступен в виде нативного приложения для Apple Vision Pro. Он призван повысить опыт пользователей, позволяя перемещать и р...

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

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

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

SmartFlow: «В начале был пароль...» или новая аутентификация VK ID Привет, Хабр! Исторически сложилось, что первым способом аутентификации (в 1960-х) с появлением доступных компьютеров стал пароль. О рисках его использования и об изобретённых человечеством альтернативах мы подробно рассказали в статье о будущем беспарольной аутентифика...

Жук, нумерология, хеш или ничо? Оптимизация работы с путями Привет, Хабр! Меня зовут Евгений Кузьмин, я Java-разработчик в CDEK. Надеюсь, все знают, что это за компания и чем она занимается. Давайте представим, что вам нужно отправить посылку с гостинцами родственнику в Москву из Новосибирска. Вы приходите в ближайший пункт приёма по...

[Перевод] Почему некоторые проекты угасают после ухода программиста из компании Зачастую судьба цифрового продукта заботит не только компанию, которой он принадлежит, но и специалистов, непосредственно участвовавших в его разработке. Для многих программистов (и команда beeline cloud — не исключение) проект, к которому они приложили руку, — это не просто...

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

ESPspectrum прошивка ESPspectrum - проект на основе компьютера ZX spectrum, с собственной простой операционной системой. Это вторая статья проекта ESPspectrum. В данной статье описывается программный код OC. Есть возможность открывать, редактировать, создавать и удалять файлы. Есть калькулятор с...

Yandex Backend Tour: по городам России в поисках backend-разработчиков Программисты уровня middle+ не готовы тратить месяц жизни на длительные интервью. Поэтому Яндекс приглашает backend-специалистов пройти собеседование всего за неделю, без стресса и ожидания. В ходе Yandex Backend Tour с 13 по 17 ноября кандидаты смогут встретиться офлайн с р...

Тестируем приложение как сын маминой подруги или взгляд на Trace Based Testing Привет! Меня зовут Сергей, я бэкенд разработчик команды SEO в Банки.ру.В этой статье хочу описать свое знакомство с техникой Trace Based Testing (TBT): • расскажу о концепциях, которые чаще всего используются сейчас в тестировании• кратко опишу, что такое distributed ...

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

CSS генератор селектров, дашборд для запуска Ansible-плейбуков, Terraform-кода и Bash-скриптов – и другие стартапы 10 новых российских проектов для замены Notion,  интеграции Tilda с Airtable, поиска работы для дизайнеров и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервисы и железки от русскоязычных команд. Чита...

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

Как не стоит делать игры на Unity Много статей написано про хороший и плохой код, но статей с разборами проблем реального кода очень мало (за исключением багов в open source проектах), поэтому решил показать проблемы в реальной игре на Unity. Читать далее

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

Сплит клавиатура Lily58 — впечатления На Хабре уже были статьи про эту клавиатуру, но у авторов уже были собранные клавиатуры. Оказалось, сборка - это очень увлекательное занятие, которое обязательно хочется повторить в будущем. Далее опишу свои впечатления о процессе и самой клавиатуре. Читать далее

Автоматическое обновление заметок в Joplin Joplin это опенсорс приложение для управления заметками, которое я активно использую. Некоторое время назад понадобилось редактировать заметки автоматически. Задача казалась несложной, но по пути удалось собрать достаточно граблей. Пока разбирался, написал микро клиент на go...

DevOps as a Service. Часть 4. Решаем проблемы развития сотрудников подразделения и управления инициативами Всем доброе утро! С Вами Крылов Александр, и мы продолжаем серию статей про DevOps as a Service, и как с помощью данного подхода возможно решить ряд распространённых проблем. В прошлых статьях мы описали сам подход, показали пути решения различных проблем. Со статьями можно ...

[Перевод] Выявление ошибок в работе с памятью в C и C++: Сравниваем Sanitizers и Valgrind В этой статье вашему вниманию представлено сравнение двух инструментов для поиска ошибок в работе с памятью в программах, написанных на memory-unsafe (небезопасных при работе с памятью) языках — Sanitizers и Valgrind. Эти два инструмента работают совершенно по-разному. Поэто...

Не все логи одинаковы полезны: 3 истории из жизни Прочитав статью "Утечки памяти, которые не утечки", я решил поделиться своим опытом поиска проблем, связанных с нагрузкой систем под управлением Windows. 2 проблемы были связаны с возросшей нагрузкой на ЦПУ и одна проблема связанна с утечкой памяти.В своей статье я расскажу,...

Первый учебник не о том, ЧТО нужно знать QA (про это сказано достаточно), а КАК правильно учиться и быстрее найти работу Гуд ньюз эвриван! У нас с друзьями есть традиция — каждый год мы пишем хотя бы один большой IT-учебник. В 2023 году мы выпустили бесплатный 100-Year QA-Textbook - интерактивный учебник по тестированию на английском и русском языках. 700+ страниц (без учета картинок!), 4...

Context receivers — новые extension functions Поговорим сегодня про context receivers — фиче Kotlin, про которую я узнал давно, но смог найти применение лишь пару месяцев назад. Расскажу о том, что такое context receivers, где их можно использовать, и, конечно же, про «успешный успех» — минус 60% самописного DI в OzonID...

T-test. Зависимость от независимости Привет, Хабр! В статье подробно рассмотрим область применения самого базового статистического критерия Стьюдента. Посмотрим, как он ведёт себя, когда мы не хотим отдавать качество подбора наших групп на волю случая. Читать далее

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

Kotlin Multiplatform в мобильной разработке. Рецепты общего кода для Android и iOS Kotlin Multiplatform — технология, которая позволяет использовать общую кодовую базу для бизнес-логики приложений разных платформ и писать платформенный код только там, где это необходимо. Хотя последнее время о ней много и часто говорят, найти информацию о нюансах внедрения...

Unpacking аналитиков: виды, особенности и отличия Приветствую всех читателей Хабра!Меня зовут Белоусова Александра, я развиваю направление по обучению и стажировкам аналитиков в «Автомакон». У меня довольно разнообразный профессиональный опыт: была и бизнес-аналитиком, и системным, и аналитиком данных, руководила проектами ...

[recovery mode] 9 лучших канбан-досок для работы и личных дел в 2024 Канбан-доски помогают обеспечить гибкость и прозрачность процессов в управлении задачами и проектами. Выбор подходящего инструмента может существенно повлиять на продуктивность команды, упрощая планирования и отслеживание прогресса. В этой статье рассмотрим 9 сервисов для ра...

Google заплатит $5 млн тому, кто придумает реальное применение квантовым компьютерам Google и XPRIZE Foundation запускают конкурс с призовым фондом в $5 млн. Цель – найти практическое применение квантовым компьютерам, способным принести пользу обществу.

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

[Перевод] История разработки игры «Тетрис»: каким может быть подарок на Новый год или Рождество? От лица beeline cloud поздравляем всех читателей Хабра с Новым годом! Подготовили для вас статью про необычный подарок. Будем рады, если вы в комментариях поделитесь своими историями и расскажете, какие интересные технологичные презенты вам доводилось дарить или получать в к...

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

Статический анализ структуры базы данных (часть 1) Статический анализ структуры базы данных — это процесс выявления ошибок, нерекомендуемых практик и потенциальных проблем в базе данных только на основе структуры, типов данных, свойствах объектов. Статиеский анализ структуры не задействует ни пользовательские данные, ни ста...

[recovery mode] Симулятор реального собеседования для программистов — практикуемся онлайн Недавно я начал искать работу фронтенд-разработчиком и проходить интервью: готовился, решал задачи, смотрел mock-интервью на YouTube. Но, к моему сожалению, на реальном интервью все мои мысли свалились в кучу, и я выглядел неуверенно. Хотя до этого мне казалось, что я готов ...

[recovery mode] ShIoTiny5 — OTA, часы, Encoder и прочие новости от v0.26 до v0.32 Это продолжение цикла статей о хобби-проекте ShIoTiny5 - встраиваемой системе графического программирования микроконтроллеров семейства ESP8266.Изменения, новшества, планы - за последние несколько месяцев.Для тех, кто не знает о чём речьДля тех, кто слышит о проекте ShIoTiny...

Agile не поможет. Ищем решения острых проблем в разработке ПО Scrum, Kanban и другие «‎эталонные» методы ведения проектов далеко не идеальны и многое упускают. Поэтому они редко применяются в чистом виде: как правило, проджекты меняют эти практики под себя. При этом легко сломать то, что работает, ничего не исправить и испортить жизнь ...

[Перевод] Частичная агрегация В нескольких предыдущих статьях обсуждалось, как в SQL Server реализована агрегация, были рассмотрены операторы агрегирования потока и хеш-агрегат. Я также использовал хеш-агрегат в качестве примера в статье Введение в распараллеливание исполнения за...

VisionFive2 (ядро Linux) В предыдущей статье мы рассмотрели процесс сборки загрузчика. Теперь мы рассмотрим ядро Linux, исходные коды которого поддерживает компания StarFive в репозитории https://github.com/starfive-tech/linux. Кроме того, мы рассмотрим создание скриптов загрузки ядра (boot.scr) для...

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

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

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

Как Data Science помогает разрабатывать лекарства На протяжении более чем десяти лет я профессионально занимаюсь анализом медицинских данных и участвую в разработке инновационных препаратов. Не скрою, меня приятно удивляет, что в данный момент наука о данных (Data Science) привлекает все больше внимания и захватывает умы ма...

Руководство по проектированию дизайна и юзабилити интерфейсов с Drag and Drop Всем привет! Меня зовут Александр Григоренко, я фронтенд-разработчик, и я часто сталкиваюсь с разработкой веб-интерфейсов с использованием Drag and Drop. В своей предыдущей статье про Drag and Drop я рассказывал про историю появления и развития этого подхода: появившись в пе...

Разработка Tower Defense на Unity — часть 2, проектирование И так, в прошлой статье цикла тут мы определились с концепцией игры, геймплеем и программными средствами. Самое время поговорить об архитектуре, организации игрового процесса, что и как будет происходить. Чтобы определиться с организацией всех процессов в игре необходимо раз...

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

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

Создание системы управления электродвигателями в наноспутнике Введение:Целью работы является создание системы управления электродвигателями в наноспутнике. Установка положения спутника в пространстве осуществляется с помощью электродвигателей, снабженных маховиками. В докладе рассмотрен один из возможных алгоритмов управления электродв...

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

Высокоточное измерение ЭКГ. Часть 2 В данной статье изложу свою концепцию регистрации и обработки сигналов ЭКГ в носимых устройств для  решения задач обнаружения  опасных состояний сердечно-сосудистой системы человека.   Далее рассмотрю кратко реальную точность измерения ЭКГ и свой вариант ее по...

Фэнтези и бизнес-показатели: как и во что менеджеры играют на работе — Я тебе за что плачу? За то, чтобы ты играл на рабочем месте!?— Да.— Действительно…Продолжай.Люди играли, играют и будут играть. Но почему бы не играть с пользой и вместо «Танки Онлайн» приносить результат банку, а себе — денежку? Никаких причин отказываться от такой и...

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

Велосипедим связанный список на Wolfram Возможно 11 подписчиков моего блога обратили внимание на тот факт, что все мои статьи касаются языка Wolfram, а несколько последних статей вышли довольно громоздкими. Одна из последних статей была помечена Хабром как требующая в среднем 32 минуты на прочтение. Я посчитал, чт...

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

Миграция конфигурации сборки с Groovy на Kotlin DSL (Domain-Specific Language) — это язык программирования, который спроектирован и оптимизирован для решения задач в конкретной области или для определенного класса задач. DSL build.gradle предоставляет разработчикам удобный способ определения настроек проекта и управления ...

100 вопросов для подготовки к собесу Python Доброго времени суток!Представляю подборку из 100 вопросов с собесов на позицию джуна Python-разработчика. На Хабре есть неплохие статьи на тему подготовки к собеседованию и всё в таком духе, но прямо набора вопросов/ответов на понимание Python в формате чек-листа не встреча...

Ищем вдохновение, мотивацию и новый заряд энергии Все вы знаете, зачем посещать конференции. По крайней мере, на всех рекламных баннерах и других рекламных материалах пишут что-то похожее. Это обновление знаний, обмен опытом, soft skills, новые контакты и «тусовка». На самом деле это не всё, что даёт нам посещение профессио...

Как не давать пустых обещаний себе, команде и заказчику Привет, Хабр!14 лет я работал в международной компании Airbus – компании, занимающейся авиастроением. В IT же мой путь начался совсем недавно – всего лишь чуть больше года назад. Чем отличается управление релизами программного обеспечения и управление проектированием констру...

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

NativeScript в мире кроссплатформенной разработки Давайте знакомиться! Меня зовут Игорь. Я разработчик кроссплатформенных мобильных приложений в компании Smartex. В этой статье я расскажу о NativeScript, основных преимуществах платформы и ее недостатках.Материал будет полезен не только разработчикам, которые уже пишут прило...

Как мы наладили процесс разработки внутренних приложений с помощью Appsmith Привет! Меня зовут Алексей, я аналитик данных в команде BI финансового маркетплейса Банки.ру. Сегодня хочу поделиться опытом работы с Appsmith. Это low-код инструмент для автоматизации бизнес-процессов. В статье расскажу, зачем вообще нам понадобился подобный инструмент...

Процедурная генерация укрытий в играх В игровых мирах сражения, взаимодействия НПС и стратегические маневры приводят к необходимости поиска точек защиты или точек укрытия (cover). В этой статье я рассмотрю один из аспектов игровой механики – создание такой системы на основе анализа окружения, которая позволяет и...

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

Как тяжелый монолит обернуть в удобный интерфейс Собрались как-то вместе: продакты, HR, лиды и архитекторы ИТ, и начали думать, как же им перестроить HR-процессы в Банке так, чтобы улучшить клиентский опыт сотрудников и им стало удобно работать с HR-услугами..У нас была идея продуктового подхода, десяток backend систем, 23...

Как запустить WebRTC на сервере, или как я пилю вебкам Всем привет!Хотел логически подвести к этому абзацу в конце предыстории, но побоялся, что не все до туда дочитают, т.к. статья техническая и душная.ДИСКЛЕЙМЕР: это не бескорыстный акт передачи знаний с моей стороны. Я пытаюсь найти инвестиции для своего проекта и создал чат ...

Управление процессами КИСМ Норникеля выходит на новый уровень Проект выбивали более трех долгих лет, одних только поездок, встреч и презентаций было более десятка. В ходе проекта возник интересный случай. Одной из унаследованных систем, из которой надо было подтянуть данные оказалась наша же система, поставленная заказчику в далеком 20...

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

[recovery mode] Яндексу здесь не место… Здравствуйте, уважаемые читатели!Тема сегодняшней статьи будет несколько нестандартная, однако, безусловно связанная с информационными технологиями, нейросетями и технологическим гигантом нашего времени – компанией Яндекс.Сразу хочу отметить – я отлично осознаю факт того, чт...

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

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

Вся мощь паттернов в Wolfram Language Редкая птица долетит до середины Днепра, не каждый разработчик осилит все паттерны в WL. Нет ему равных языков в паттерн-матчинге. Чуден и необычен язык этот. Изобилует он точками, подчеркиваниями, да запятыми так, что в глазах рябит, да разум мутнеет. В этой статье я постар...

Не UI единым: как провести UX-ревью сложного IT-продукта и не утонуть в данных? Гайд от практика Привет! Это Даша, проектировщик из Selectel. Сегодня хочу поделиться своим опытом проведения UX-аудита — неоднократно я приходила в новый продукт и передо мной вставала такая задача. Я успела набить шишек, перерыть половину рунета и в итоге на практике получить ценный опыт...

Наш опыт Android- и iOS-разработки в проекте Посмотрим на текущую ситуацию с разработчиками Android и iOS‑приложений. Обсудим варианты разработки мобильных приложений. Разберемся, как мы в стартапе NFCKEY работаем в этом направлении. Затронем особенности, которые возникают в связи с у...

Мой первый опыт с VyOS. Часть 1 Привет хабр!Меня зовут Берик, я работаю системным администратором в IT холдинге SAMGAU, где отвечаю за IT инфраструктуру. Хочу написать серию статей где поделюсь своим опытом по использованию VyOS. Читать далее

End-of-Life: как понять, пора ли закрывать продукт, основываясь на данных Привет! Меня зовут Ульяна Баисламова. Я старший продуктовый аналитик в команде B2b и оффлайн-опыта в СберМаркете.Закрытие продукта (End-Of-Life, EoL) — естественная часть жизненного цикла сервиса или проекта, которая не обязательно связана с его несостоятельностью. В предыду...

Фонетический словарь. Пет-проект в полезное приложение У меня есть хобби — изучение английского языка, и последнее время я увлекся фонетикой британского английского языка, но почти все словари дают транскрипцию «‎Королевского английского», на котором говорят, по данным Гугла, около 3 процентов жителей Соединённого Королевства....

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

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

Несвоевременная технология подземных лодок и геоходов «Прекрасная эпоха» — это условное название периода в истории Европы, продлившегося от 1871 до 1914 года, то есть, от окончания франко-прусской войны до начала первой мировой войны. На Хабре этот период обычно затрагивается вскользь как эпоха невиданно плотного и быстрого тех...

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

Продуктовый подход к pet-проекту или как я разработал музыкальное веб-приложение Что вам может дать продуктовый подход к pet-проекту? Если смотреть на pet-проект не как на лабораторную работу, а как на будущий продукт, начинаешь лучше понимать весь цикл разработки. При таком подходе ты сперва выступаешь в роли заказчика: определяешь, какую задачу пользов...

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

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 6 Хабр, я снова пришёл к вам с практическими советами про доступность вместе с Ильёй. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке. Сегодня мы рассмотрим следующие а...

Как мы сделали переводчик точнее и дешевле Google и Yandex Всем привет! Меня зовут Никита, я Data Scientist из Raft. Сегодня я расскажу вам о том, как мы решили задачу перевода каталога товаров большого интернет-магазина с русского на арабский язык с применением искусственного интеллекта. Мы рассмотрим различные подходы и идеи, возн...

Детектирование атак на контейнеры с помощью eBPF Привет, Хабр!Меня зовут Илья Зимин, я аналитик-исследователь угроз в компании R-Vision. Сегодня в статье я расскажу о возможностях обнаружения атак на контейнеризированные приложения с помощью такого инструмента, как eBPF, на примере приемов, связанных с побегом из Docker-ко...

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

Кем работать в IT в 2024: ведущий разработчик 1С Рубрика «Кем работать в IT» — это интервью с представителями IT-профессий, в которых специалисты рассказывают о тонкостях своей работы: плюсах, минусах, подводных камнях и заработной плате. Мы надеемся, что джунам и стажёрам она поможет больше узнать о том, что их ожидает на...

Эпоха цифровых двойников: как виртуальные модели выводят промышленность на новый уровень Мы обратили внимание, что за последние два года новости о цифровых двойниках стали выходить чаще. Причина понятна: в 2022-ом случился прорыв в изучении и внедрении искусственного интеллекта (ChatGPT и Midjourney), который сильно «взбодрил» сферу. Технологии применяют, чтобы ...

Code smell: когда код плохо пахнет Программный код, будучи по факту виртуальной сущностью не может иметь запах в прямом смысле этого слова. Однако, термин “запах кода” (code smell) некоторое время назад был введен Кентом Беком и популяризирован книгой Мартина Фаулера о рефакторинге (Refactoring: Improving the...

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

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

Что делать, чтобы эксплуатация не превратилась в бесконечное тушение пожаров Меня зовут Владимир Медин, я работаю в подразделении SberWorks, которое внедряет практики DevOps и MLOps. Хочу поделиться нашим опытом повышения надёжности enterprise-систем, вводимых в эксплуатацию, особенно впервые. Для кого-то эта статья будет в большей степени спасательн...

NASA запустило приложение для поиска МКС в небе Американское управление по аэронавтике и исследованию космического пространства (NASA) объявило о впуске нового мобильного приложения Spot the Station, которое призвано помочь отслеживать положение Международной космической станции даже тем, кто не является специалистом...

Общая лента публикаций Хабра Весной этого года мы презентовали новый тип публикаций — Посты. Это «быстрый формат» (до 1500 символов), который, по нашей задумке, должен был гармонично дополнить уже существующие типы: «Статья» (для привычных всем лонгридов) и «Новость» (для небольших м...

MemSess — очередной сервер для работы с сессиями В этой статье будет рассмотрен самописный сервер для работы с сессиями и пример работы с ним на PHP. Читать далее

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

Зачем вам Employee Experience: как премии, CRM и выдача ноутбуков влияют на прибыль компании Привет! Мы команда UX-исследователей Alfa Research Center. В банке отвечаем за Employee Experience (EX) — исследование клиентского опыта сотрудников. Мы погружаемся в устройство процессов и интерфейс внутренних продуктов. Мы не ограничиваемся исследованиями интерфейсов ...

Моя коллекция 50+ вопросов для собеса C# Привет, Хабр!Представляю 50+ вопросов для подготовки к собеседованию C#, грейд — джуниор/мидл.Вопросы разные: есть сложные/простые, с детальным объяснением и с ответом в пару предложений.Anyway, должно быть полезно, поскольку я выбрал самые частотные вопросыВообще по поводу ...

Разработка real-time приложений с Python и WebSocket Real-time приложения, как следует из названия, предоставляют мгновенный обмен данных и информации между сервером и клиентом. Они встречаются повсеместно в различных сферах, начиная от социальных сетей и мессенджеров, и заканчивая финансовыми торговыми платформами, мониторинг...

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

[Перевод] Агрегат WITH CUBE В предыдущей статье говорилось о том как  работает агрегат WITH ROLLUP. В этой статье мы рассмотрим, как реализована агрегация WITH CUBE. Как и предложение WITH ROLLUP, предложение WITH CUBE позволяет просчитать несколько «уровней» агрегации в одном опера...

Миграция с Webpack и react-scripts на Vite: Путь к Быстрому и Легковесному React Я работаю фронтенд-разработчицей в IT-компании, и многие из моих проектов на протяжении долгого времени собирались с использованием Webpack. Настройка Webpack иногда бывала сложной, но в целом он справлялся с задачей сборки проектов. Однако в последнее время мои коллеги нача...

Сообщества вокруг технологии: почему быть бесплатным недостаточно Эта статья может пригодиться тем, у кого есть пет-проект с открытым исходным кодом, который хочется продвигать, но нет опыта работы с коммуникациями. Меня зовут Ксения Романова, по образованию я PR-специалист, работала в маркетинге, затем в Developer Relations. Сейчас я мене...

[Перевод] Анализ «Пяти неправд» «Пять почему» — это распространённый метод исследования первопричин события. Он основан на предположении, что задав вопрос «почему» пять раз, можно найти ответ, который и будет являться первопричиной. Программист Сергей Целовальников* уверен: такая практика может оказаться п...

Оценка удовлетворенности сотрудников Измерение удовлетворенности сотрудников не просто позволяет компаниям "прочувствовать пульс" своего коллектива, но и выступает в качестве раннего индикатора потенциальных проблем внутри организации, будь то управленческие недоработки, неэффективная коммуникация или недостатк...

Автоматизируем поиск ценной информации в групповых чатах Telegram с помощью LLM Устали мониторить бесконечные групповые чаты в Telegram в поисках важной информации? Решение есть! Пишем компактное приложение на Python, которое будет делать это за нас с использованием LLM. Читать далее

Создание и использование BOM в Gradle В каждой компании (а если она крупная, то, скорее всего, в каждом подразделении) должна быть выстроена культура использования BOM (bill of materials) для управления версиями зависимостей. В этой статье я хочу поделиться своим видением того, как это может быть организовано, а...

Обзор решений на основе 3D Gaussian Splatting Спустя полгода после выхода публикации 3D Gaussian Splatting лавина препринтов на его основе накрыла область 3D-реконструкции. Какие задачи теперь решаются проще, и как именно Gaussian Splatting помогает в приложениях реального времени? Читать далее

Connection pool для pqxx В процессе изучения бекэнда, как нового для меня направления в программировании, я столкнулся с необходимостью оптимизации управления соединениями. Поискав в интернете существующие решения для библиотеки pqxx (C++ API для PostgreSQL), я обнаружил, что хотя они и выполняют св...

HTML и CSS ошибки, влияющие на доступность. Мой опыт и моего незрячего знакомого Ильи. Часть 3 Хабр, я уже третий месяц пишу про доступность вместе с Ильёй. Мы показываем, как HTML и CSS могут улучшить или ухудшить её. Напоминаю, что Илья — мой незрячий знакомый, который помогает мне найти наши косяки в вёрстке. Мы уже написали первую и вторую части цикла статей. С...

Kotlin Coroutines. Часть 1: Первое погружение Привет, Хабр!Меня зовут Соловьев Андрей, я Java-разработчик в «Рексофт». Сегодня мы поговорим про Kotlin Coroutines. Это моя первая серьезная публикация, и я буду рад вашему фидбеку.Ну что ж, давайте начинать! Читать далее

[Перевод] Интервью со Стефани Планк из Covalent Bioscience Что такое старение? Мы можем определить его как процесс накопления молекулярных и клеточных повреждений, являющихся следствием нормального метаболизма. В то время как исследователи всё ещё плохо понимают, как метаболические процессы вызывают накопление повреждений, и как нак...

Суровая правда о разработчиках и разработке. Part 2. Три года спустя Почти три года назад, в эпистолярном порыве, написал я значит дискуссионную статью посвященному текущему состоянию рынка IT. Для нашей отрасли три года — это достаточно большой срок, поэтому самое время подвести промежуточный итог с моей не самой выс...

Как мы перевезли на новый сайт 700 тысяч рецептов и 6 миллионов фото пирогов, сырников и овсяноблинов На рынке частой историей является поглощение глобальными игроками локальных интернет-сервисов и ресурсов, которые дублируют их функции. Так произошло в 2017 году и с парой «Овкусе» и Cookpad, когда последний решил зайти в русскоязычный сегмент. Тогда слияние произошло успе...

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

Используем Elasticsearch вместе со Spring Boot Всем привет! Это моя первая статья на Хабре и в ней я хочу рассказать о том, как мы можем интегрировать Elasticsearch в наше Spring Boot приложение. Этот проект предназначен для ознакомления с технологиями и служит скорее шпаргалкой/пособием или же фундаментом для дальнейшег...

Бруклинский мост. Зачем генерируем C++ на Kotlin Нелегко на рынке найти senior разработчика для конкретной сферы. Каждый из них имеет уникальные знания в своем языке и фреймворке, будь это Java, Kotlin, С++, JS или Swift. Каждый накапливал свои знания годами. Но найти senior разработчика, который одинаково хорош и C++ и в ...

Выбор информационной системы для автоматизации вашей бизнес-задачи – разбираемся вместе с GlowByte Вопрос автоматизации бизнес-процессов всегда был актуален для большого количества современных компаний, и в последние несколько лет тренд на автоматизацию набирает всё большие обороты.  Информационные системы (ИС) позволяют повысить качество бизнес-процессов компан...

Топ Необходимых Bash-Команд для Разработчика [Шпаргалка] Bash - самый распространенный командный интерпретатор в UNIX-подобных системах, предоставляет возможность выполнения практически любого действия через терминал. Не все операции можно выполнить через графический интерфейс, в то время как Bash дает возможность полного контроля...

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

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

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

Пункт назначения — Squadus. Наш опыт переезда на альтернативу Microsoft Teams В марте 2024-го рынок встряхнула новость от Microsoft о грядущем отключении доступа к облачным сервисам компании для корпоративных клиентов из России. Оперативно делая бэкапы, одни побежали искать «обходные пути», вторые — подбирать альтернативы продуктам Microsoft. А я реши...

[Перевод] Обработка ошибок в web apps не должна быть такой сложной В процессе работы с Go я столкнулся с ещё одной проблемой — обработкой ошибок в хендлерах. Как можно сделать этот процесс удобным и эффективным для 150+ обработчиков? Как обеспечить консистентность и поддержку при обработке ошибок? Разумеется, мои поиски палочки-выручалочки ...

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

Проект «Селенит». Часть 5: Контроллер, встроенное ПО и квадратурный модулятор Аппаратура SDR (Software-defined Radio), как и следует из названия, представляет собой программно-аппаратный комплекс. В предыдущих частях цикла были рассмотрены преимущественно аппаратные решения радиотракта трансивера Selenite Lite. В большей части данной публикации будет...

Разговор с директором по ИИ «Яндекс Рекламы» Алексеем Штоколовым о применении ИИ, AI‑тренерах и рутинных задачах В конце ноября 2023 года информационная служба Хабра сходила на #Reconfa — конференцию «Яндекс Рекламы». Неформат для Хабра, но в этот раз на конференции обсуждалось применение ИИ и нейросетей, поэтому я решил сходить, посмотреть. Об э...

Торговый бот на Python с нуля (с использованием Binance API), часть 2 Продолжение первой части статьи о создании торгового бота на python с нуля с использованием Binance API!В данной статье мы напишем полностью рабочую реальную стратегию с использованием биржевых данных. Я расскажу что такое линии Боллинджера, а также о других популярных страт...

Цифровая музыка на микрокомпьютерах (часть 2/2) В первой части статьи мы узнали про существование такого явления, как цифровая музыка, то есть состоящая из оцифрованных кусочков звучания реальных инструментов, на маломощных 8-битных микрокомпьютерах 1980-х годов, а затем углубились в детали этой истории в рамках горячо л...

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

YouTube теперь обновляет количество лайков и просмотров видео в режиме реального времени YouTube внедрил обновление, позволяющее просматривать просмотры и лайки в реальном времени во время воспроизведения видео на веб-сайте и Android-приложении

YouTube теперь обновляет количество лайков и просмотров видео в режиме реального времени YouTube внедрил обновление, позволяющее просматривать просмотры и лайки в реальном времени во время воспроизведения видео на веб-сайте и Android-приложении

[recovery mode] Android-приложение на Compose с нуля: Часть 2 (UI) Здравствуй, дорогой читатель!В статье рассматривается поэтапная разработка дизайн-системы и UI для Android-приложения "Калькулятор", используя библиотеку Jetpack Compose. Начнём с создания проекта и закончим запуском приложения на эмуляторе.Ссылка на репозиторий Читать далее

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

[Перевод] Сравнение технологий WebSockets, Server-Sent-Events, Long-Polling, WebRTC и WebTransport При работе с современными веб-приложениями реального времени незаменима возможность отправлять события с сервера на клиент. Именно этой необходимостью продиктовано то, что за годы работы было изобретено несколько методов для этой цели, каждый с собственным набором достоинств...

Цикл статей о Greenplum. Часть 1. GP под капотом Всем привет!Как вы знаете, многие поставщики ПО ушли с российского рынка ввиду введённых санкций и многие компании столкнулись с необходимость заняться импортозамещением в кратчайшие сроки. Не стал исключением и наш заказчик. Целевой системой, на которое было принято решение...

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

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

История ритм-игр: от «Саймона» до Just Dance Не помню, в какую первую ритм-игру мне удалось сыграть. Был ли это Dance Dance Revolution в аркадном зале или Patapon на PSP? А вообще, кажется, это были мини-игры в «Рататуе» на PlayStation 2 (помните этого маленького крыса?). Так или иначе, ещё до этого я часто выстукивал ...

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

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

Как я использовал тематическое разделение доступа для создания веб-приложения В этой статье я хочу поделиться своим опытом использования тематического разделения доступа (ТРД) для создания веб-приложения, которое позволяет пользователям обмениваться сообщениями по разным темам. ТРД — это метод управления доступом, при котором права доступа субъектов с...

Реальный Python: грустные факты, которые вас разочаруют Начинаем гуглить информацию о Python. Все статьи как под копирку: тут хорошо платят, легко учиться, гостеприимное коммьюнити, просто рай на земле. Это ловушка. Я писала на Python полтора года, так что пришло время поговорить о том, как там обстоят дела на самом деле.  Ч...

Получение мостов tor из GMail с помощью Python В предыдущей статье была рассмотрена установка и настройка tor в ОС Linux Mint 21.3, а также были рассмотрены несколько способов получения мостов obfs4 с помощью сайта и телеграмм бота. В комментариях был задан вопрос по пово...

Немного об испарении Хокинга Несмотря на большой интерес к этой теме очень многие источники и практически все научно популярные неверно объясняют это явление. Причина в том, что первоначально некорректную эвристическую интерпретацию своего открытия привел сам С. Хокинг, а именно...

[Перевод] Как создать собственный шрифт В этом месяце я решил узнать, как создать шрифт, который буду использовать в своём комиксе hakum. Раньше я рисовал текст в цифре на своём планшете. Результат оказывался хорошим, но иногда трудночитаемым (размер текста часто скакал на одной странице). Мне не хотелось использо...

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

Лайв игры в Unlim Для многих азартных любителей и игроков казино лайв игры в Unlim Casino становятся настоящим открытием. Unlim Casino - это онлайн-платформа, которая предлагает широкий спектр игр, включая лайв развлечения с живыми дилерами. Этот формат игры стал особенно популярным благодаря...

SwiftUI: архитектура State-Model-View В документации по UIKit компании Apple можно найти объяснение, что “структура приложений основана на шаблоне проектирования Model-View-Controller (MVC)”.В материалах Apple по SwiftUI объяснений и даже просто ссылок на паттерны проектирования, похоже, нет. Попробуем сначала р...

Способы обхода GIL для повышения производительности Привет, Хабр!Global Interpreter Lock в Питоне предотвращающает одновременное выполнение нескольких потоков в одном процессе интерпретатора Python. Т.е даже на многоядерном процессоре многопоточные Python‑приложения будут выполняться только в одном потоке ...

Tesla может начать продажи роботов Optimus в 2025 году, а уже в этом году они начнут трудиться на заводах После публикации финансовых результатов Tesla за первый квартал 2024 года Маск сообщил обновленную информацию о сроках внедрения гуманоидного робота Optimus. Генеральный директор заявил, что Optimus уже выполняет заводские задачи в своей лаборатории. Он считает, что к к...

Transient storage в EVM (EIP-1153): на грани добра и зла В одной из статей о расчете газа в Ethereum (ссылка) я рассказал об истории изменений механизмов подсчета газа для хранилища смарт-контракта (storage) — от правил, заложенных в протоколе изначально, до EIP-3529. Во всех этих изменениях прослеживается основная проблема: нерац...

Сто паттернов для разработки корпоративных программ. Часть первая В этой статье рассмотрены все паттерны проектирования из "Банды четырёх" с примерами на языке программирования C#. Для самых терпеливых имеются дополнительные паттерны.Это первая статья из серии "Сто паттернов для разработки корпоративных программ". Следующие статьи будут по...

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

[Перевод] От теории к практике: создаём веб-приложение для решения задачи коммивояжёра В таких сферах, как исследование операций (Operations Research) и наука о данных (Data Science) чрезвычайно актуально сближение теории и её практического применения в виде программных проектов. Теоретические выкладки формируют базу программ для оптим...

Анализ типов ИТ-проектов: как выбрать проект под свой характер? Рынок труда в ИТ сегодня  — это рынок соискателей, которые могут позволить себе такую роскошь, как выбор проекта под свои черты характера. Не каждый проект подходит под характер конкретного человека, из-за чего возможны проблемы как при поиске работы, так и будучи приня...

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

Построение AppSec в огромном Enterprise и опыт его применения в бирюзовой компании Речь пойдёт о трудностях работы инженеров по безопасности в крупной компании – как команда выстроила AppSec и как выбранный подход помог сделать безопаснее “бирюзовую” команду и огромный Enterprise в целом. Это история о самоорганизации, зрелости и уменьшении количества...

Секреты технического собеседования от СТО с опытом 1000+ интервью Привет, меня зовут Артём Пулявин, с 2022 года я занимаю позицию технического директора в Ситидрайве и отвечаю за всё IT в компании — от закупки серверов и ноутбуков до разработки и найма новых членов команды. За 20-летнюю карьеру я провёл более 1 000 собеседований и взял на ...

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

Как трудно быть абитуриентом мех-мат МГУ Авторы делятся своими воспоминаниями о поступлении и учебе на механико ‑математическом факультете МГУ. На всякий случай: Ильичев Виталий — окончил кафедру «Математической логики и теории алгоритмов», доктор технических наук, Южный Научный Центр РАН; Марин...

Google запустила конкурс XPRIZE на $5 млн, чтобы найти реальное применение квантовым компьютерам Квантовые компьютеры работают быстро, но есть ли от них толк?

«Управление данными 2023»: зрелость процессов растет Эксперты в области работы с данными поделились опытом повышения зрелости процессов Data Governance и обсудили перспективы применения в них искусственного интеллекта.

Опыт использования бизнес-процессов Битрикс в рамках крупного корпоративного портала Наша команда специализируется на разработке и развитии функционала корпоративного портала группы компаний НЛМК.На практике мы сталкиваемся с самыми разными задачами: от вывода ленты новостей компании и простейших форм обратной связи до функционала оценки качества работы сотр...

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

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

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

[Перевод] Cовместное использование GitHub Actions, Docker и GitHub NPMvPackage В современном мире разработки программного обеспечения GitHub остается самой популярной платформой для хранения Git-репозиторий и управления ими. Помимо своей фундаментальной роли в управлении версиями, GitHub предлагает дополнительные функции, включая возможность размещения...

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

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

Хабргорода У меня возникла идея сделать список упоминаний названий городов в статьях Хабра за 2023 год и карту по которой можно найти статьи. Когда можно найти статьи, где упомянается конкретный город. С первого взгляда задачка простая, но это как всегда дьявол кроется в деталях! Для э...

Адаптация алгоритма Дейкстры для расчёта кратчайших путей в IP-сетях Адаптация алгоритма Дейкстры для расчёта кратчайших путей в IP-сетях.Для для сетевиков, программистов и интересующихся. Читать далее

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

Как мы реализовали аутентификацию трафика для MSA на базе монолита Привет, Хабр! Меня зовут Салахутдинов Дмитрий, я принципал инженер в СберМаркете. Занимаюсь развитием Ruby-платформы и масштабированием системы через декомпозицию монолита на сервисы.В статье хочу поделится опытом внедрения аутентификации на базе монолита. Это первая пробле...

Проектируйте правильно Проект это сложная история. Обычно это относительно сложное и длительное мероприятие, создать программный продукт и провести его через стадию активной разработки до первой реальной коммерческой эксплуатации. Лично я видел как этот путь, в среднем, занимал от 2 до 5 лет на пр...

Токсичный, но важный металл для солнечных панелей и не только: краткая история кадмия Мы продолжаем рассказывать о различных металлах, истории их открытия, применении и патентом аспекте. На этот раз речь пойдет о кадмии.  Читать далее

Короткой строкой: почему я начал учить английский и пригодился ли язык в работе Всем привет! Меня зовут Павел, я работаю в Альфа-Банке на позиции QA Tech Lead. В этой статье хотел бы поделиться своим видением и опытом использования английского языка в повседневной и профессиональной жизни. Не сказать, чтобы мой английский был на высочайшем уровне, но дл...

iPhone 16 Pro выйдет только через полгода, а первые результаты тестов Apple A18 Pro уже появились в Сети Первые результаты тестирования однокристальной системы Apple A18 Pro, которая должна быть установлена в iPhone 16 Pro, появились сегодня в Сети. Устройство под управлением Apple A18 Pro набрало 3570 и 9310 баллов в одноядерном и многоядерном тестах Geekbench 6, что на 2...

Вакансии для молодых программистов, российский Calendly – эти и другие российские стартапы 10 новых российских проектов для управления фулфилментом, создания онлайн-документов, 3D-визуализации для интернет-магазинов, планирования задач и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую неделю публикуются лучшие онлайн...

Proof of Work и Proof of Stake для чайников Привет, Хабр!На старте блокчейн-технологий стояла задача создания системы, которая могла бы функционировать надежно и без централизованного контроля. Здесь помогают консенсусные алгоритмы. Консенсус в блокчейне — это согласие всех участников сети относительно ее текущего сос...

Обобщенные фабрики тайпгардов в TypeScript Привет, Хабр! Меня зовут Сергей Соловьев, я разрабатываю интерфейсы международных платежей в Тинькофф Бизнесе. Уверен, многие хотят писать надежный, поддерживаемый, но при этом лаконичный код. Как найти баланс?TypeScript упрощает разработку веб-приложений ценой роста кодовой...

Как быстро и безболезненно закрыть регресс в API из связки PyTest + JSON Schema Протестировать позитивные сценарии использования API можно легко и быстро, используя JSON схему. В этой статье мы поговорим о полезных приемах, хитростях, которые можно применить для ускорения процесса, и об источниках данных для такого тестирования. Излагать буду “для самых...

Почему переезд на новое ПО — такая боль для сотрудников. С чем смириться и что можно улучшить Эта статья для тех, кто хоть раз организовывал переезд на новое ПО на работе. И не важно, что это было — Notion в стартапе, Jira для разработки или пачка отдельных SaaS-систем.В процессе жизни и роста любой компании приходится перетасовывать, объединять, менять системы, на к...

Go — 100 вопросов/заданий с собеседований Приветствую тебя, хаброжитель!В этой статье разберём 100 вопросов, они покрывают львиную долю того, что могут спросить на собеседовании джуниор Go-разработчика с практически любой специализацией. Конечно же, в реальной работе на Go требуются немного другие скиллы, чем умение...

Как вносить вклад в Open Source — и не только кодом. Инструкции от Linux Foundation, CNCF и Free Software Foundation Мы во «Фланте» любим Open Source — причем не только пишем свои открытые инструменты (werf, shell-operator, grafana-statusmap, сommunity-версия Deckhouse), но и активно участвуем в разработке различных проектов — участвуем в KEP’ах Kubernetes, в составе небольшой группы разра...

«ИИ-промывка»: шумиха вокруг технологии против реального взгляда Искусственный интеллект (ИИ) совершает сейчас прорыв в промышленности и IT в целом, но обманчивая практика под названием «ИИ-промывка» (AI Washing) мутит воду. Компании преувеличивают свои возможности в области ИИ, чтобы казаться более инновационными и привлечь клиентов. В с...

Embox отправляется на Vostok Как, наверное, многие на хабре знают, мы в проекте Embox любим запускаться на отечественных процессорах.Эта статья – своеобразный (расширенный) анонс того, что Embox перенесен на микроконтроллеры еще одного производителя микроэлектроники в РФ. Речь идет о технологической пла...

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

Создание и тестирование gRPC сервиса (Spring Boot приложение) Привет, Хабр! Сегодня я поделюсь опытом работы с gRPC и расскажу, как создать и протестировать gRPC-сервис в приложении на Spring Boot. Основная проблема — это отсутствие структурированной информации по корректному тестированию gRPC сервиса. Эта статья будет полезна для тех,...

[recovery mode] 75 вопросов на собеседовании QA В этой статье вы найдете популярные вопросы, которые задают на собеседованиях ручным тестировщикам. Будет не лишним изучить их для повышения уверенности перед интервью с HR-специалистом. Если вы уже ознакомлены с некоторыми аспектами разработки программного обеспечения, вам ...

Профилирование асинхронного Python Профилирование приложений — это процесс анализа программы для определения её характеристик: времени выполнения различных частей кода и использования ресурсов.Для асинхронного python-кода существует конечное количество специфических "узких мест", которые лучше перечислить зар...

Изображения еды, созданные искусственным интеллектом, оказались аппетитнее реальных фотографий Результаты нового исследования, опубликованного в журнале Food Quality and Preference, показали, что люди обычно предпочитают изображения продуктов питания, созданные искусственным интеллектом, реальным снимкам. Особенно когда они не знают, какая из картинок была сгенерирова...

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

Swift UI: от сомнений к успешному внедрению Всем привет, меня зовут Фарид Хусаинов, я тим-лид команды мобильной разработки Банки.ру. Мы делаем iOS-приложения компании Банки.ру, а именно – наше основное приложение и приложение, посвященное страхованию.Два с половиной года назад мы приняли решение перевести наше мо...

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

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

Чем бизнес-аналитик отличается от системного и почему для проектов цифровой трансформации вам нужно два специалиста Привет, Хабр! Я Владимир Хрипун, руководитель центра компетенций по развитию BPM-систем в Первой грузовой компании. Сегодня разберем с вами, чем бизнес-аналитик отличается от системного и почему для проектов цифровой трансформации вам нужно два специалиста. Статья будет поле...

Диаграммы Ганта онлайн, читалка для книг на английском, красивые данные для отчетов – эти и другие российские стартапы 10 новых российских проектов для управления проектами, финучета в бизнесе, 3D презентаций товаров и услуг, геоаналитки, ускорения индексации сайтов и многого другого. Битва за «Продукт недели» началась!Product Radar — здесь каждую неделю публикуются лучшие онлайн-сервис...

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