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

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

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

Katello и Foreman в процессе patch management Это публикация о некоторых функциях системы Katello и Foreman, касающихся процесса Patch Management.Katello - это модульная часть системы Foreman, управляющая сторонними или локальными репозиториями pip, rpm, deb пакетов, podman, docker образов. Katello предоставляет во...

Делаем crackme. Часть вторая: шифруем функции Эта статья вторая в цикле по созданию crackme под linux amd64. В этой части мы создадим исполняемый файл, в котором каждая функция будет зашифрована собственным ключом, и будет расшифровываться только на время исполнения. Процесс создания будет полностью автоматизирован, то ...

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

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

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

[Перевод] Как создать API в облаке менее чем в 200 строках кода Современные облачные инструменты и пакеты Python стали настолько мощными, что с их помощью можно создать (масштабируемый) облачный API менее чем в 200 строках кода. В этом посте будет рассмотрено, как при помощи lines Google Cloud, Terraform и FastAPI развернуть в облаке пол...

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

[Перевод] Как устроен протокол iMessage В этом посте я вкратце расскажу о внутреннем устройстве iMessage, изученном мной в процессе работы над pypush — опенсорсным проектом воссоздания реализации iMessage.Ради краткости и понятности я не буду вдаваться в технические подробности. Если вы хотите узнать, как конкретн...

Ищем Арнольда Шварценеггера среди мужчин, женщин и детей с помощью нейросети на С++ Привет, Хабр! Меня зовут Кирилл Колодяжный, я ведущий инженер-программист в YADRO. Помимо основных рабочих задач, включающих исследование проблем производительности СХД, я увлекаюсь машинным обучением. Участвовал в коммерческих проектах, связанных с техническим зрением, 3D-с...

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

Моя большая практическая шпаргалка SQL (SQLite) с готовыми запросами Привет, Хабр)Публикую шпаргалку по SQL, которая долгое время помогала мне, да и сейчас я периодически в неё заглядываю.Все примеры изначально писались для СУБД SQLite, но почти всё из этого применимо также и к другим СУБД.Здесь есть и примеры довольно сложных запросов с агре...

Как упростить себе жизнь: удобные юнит-тесты с JUnit и AssertJ Для тестирования Java-приложений создано столько полезных инструментов, что в них немудрено запутаться. Вместе с тем с помощью каждого из них можно решить строго определенный круг прикладных задач. Меня зовут Константин Шибков, я старший Java-разработчик CDEK и программный д...

Нормализация событий информационной безопасности и как ее можно выполнять с помощью языка eXtraction and Processing Всем привет! На связи Михаил Максимов, я — ведущий эксперт департамента развития технологий в R&D Positive Technologies. За плечами у меня многолетний опыт по развитию экспертизы в нашей системе MaxPatrol SIEM и процессов вокруг нее. И сегодня я хочу поговорить про один ...

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

Разработка и тестирование целочисленного сумматора с AXI-Stream интерфейсами. Часть 1 В данном цикле статей будет представлен процесс разработки и тестирования RTLмодулей на языке Verilog. В качестве примера будет рассмотрен целочисленный сумматор с AXI-Stream интерфейсами. Мы разберем некоторые приемы и паттерны, часто используемые при проектировании цифровы...

Как я написал свой первый классификатор эмоций Всем привет! Немного о себе. Меня зовут Максим, я работаю специалистом по Machine Learning в компании SimbirSoft. Последние два года я углубленно изучал область машинного обучения и компьютерного зрения и сегодня с удовольствием поделюсь с вами опытом разработки личного пет-...

[Перевод] Итак, вы думаете, что знаете Git? Часть третья: реально большие репозитории Автор оригинала Скотт Чакон — сооснователь GitHub и основатель нового клиента GitButler. Этот клиент ставит во главу угла рабочий процесс и удобство разработки, в том числе код-ревью, и не является просто очередной обёрткой над CLI git. Вам хочется использовать ванильный G...

[Перевод] Как я обработал один миллиард строк в PHP Вероятно, вы уже слышали о соревновании под названием "The One Billion Row Challenge" (1brc), если же нет, то предлагаю ознакомиться с репозиторием 1brc Гуннара Морлинга.Моё участие в проекте было мотивировано присутствием в нём двух моих коллег, которые достигли лидирующих ...

Frontend. Чистые и грязные компоненты Здравствуйте!Коротко о чем тут, чтобы вы могли понять, нужно ли оно вам или нет.Тут я описываю то к чему я пришел в разработке именно компонентов и какой подход использую. Материал может быть полезна скорее для новичков и не обязательно в React, потому что этот подход подойд...

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

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

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

Шкала масштабов вселенной (русский язык) Всем привет! Добавил русский язык к шкале масштабов вселенной.В интернете есть довольно занимательная шкала с относительными размерами разных объектов от мельчайших, до обозримой Вселенной. Сама шкала изначально была flash презентацией, а после прекращения Adobe поддержки sw...

Всё что вы хотели знать про ACL в Active Directory В данной статье я постарался максимально полно и глубоко рассказать про построение и внутреннее использование ACL (Access Control List) внутри Active Directory. В этой статье нет рассказов про "null DACL" и "empty DACL" и тому подобного. Если читатель хочет изучить все более...

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

[Перевод] Как устроена страничная организация памяти x86_64 В этом посте я буду говорить о страничной организации только в контексте PML4 (Page Map Level 4), потому что на данный момент это доминирующая схема страничной организации x86_64 и, вероятно, останется таковой какое-то время.ОкружениеЭто необязательно, но я рекомендую подгот...

Техсобесы — это просто, но есть нюанс… Привет, Хабр. Меня зовут Дима и я разработчик, тимлид и по совместительству наставник на курсе «Мидл Python-разработчик» в Практикуме. Сегодня, с вашего позволения, я вставлю свои пять копеек и поделюсь опытом по такой заезженной теме, как технические собеседования. Много сл...

React Fiber & Concurrency Part 1 (2) В сети много статей и докладов, которые описывают React Fiber, но, к сожалению, они сейчас уже не актуальны. Заметив это, я решил разобраться и актуализировать информацию. Моими основными помощниками были исходники и отладчик, поэтому здесь вы увидите множество ссылок на код...

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

Самый маленький Docker образ Rust приложения Привет %username%, эта статья про то, как поместить Rust приложение в Docker и получить образ размером с бинарный файл (6 Мб). А также про причины, которые привели к переходу с NodeJS на Rust. Отдельная пара слов о проблемах вначале, переходе на Go, и том, как команда Rust у...

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

Польза создания однородных задач для параллельного вычисления Как правильно использовать возможности параллельного программирования?Зачем программистам математика и зачем знать алгоритмы?На примере небольшой задачи мы вместе ответим на эти вопросы. А так же хочу наглядно продемонстрировать преимущества создания однородных задач.Весь к...

Парадигму UNITS в массы У первой статьи («Реальность существует и это надо учитывать») были очень интересные и содержательные комментарии, среди которых были озвучены идеи о необходимости примеров. С одной стороны это правильно, потому что на примерах можно вырабатыват...

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

Jenkins: оптимизируя динамический пайплайн → распределённая сборка компонентов ОС В процессе улучшения подходов к менеджменту зависимостей компонентов нашей Операционной Системы появилась необходимость перейти от монолитной статической сборочной системы на основе CI/CD инструментов к динамическому распределённому подходу с порождением сотен и тысяч автон...

[recovery mode] KolibriOS: пробуем ассемблер Решил потренироваться на ассемблере под x86 и выбор мой пал на KolibryOS. Ведь как-никак это ОС была написана на ассемблере и для использования ассемблера. И я хотел именно из самой KolibriOS писать код. Но... Наверное, зря я это всё затеял.Как оказалось, примеров кода не ма...

SberPay: как добавить поддержку бесконтактной оплаты в Android-приложение Хотите добавить в своё Android-приложение функцию бесконтактной оплаты, но не знаете, как это сделать? Тогда эта статья для вас! Заодно обсудим особенности реализации. В конце будет ссылка на репозиторий с примером. Читать далее

[Перевод] Как устроено автоматическое удаление мёртвого кода в Meta* В фреймворке Systematic Code and Asset Removal Framework (SCARF) компании Meta* есть подсистема выявления и удаления мёртвого кода. SCARF использует статический и динамический анализ программ для выявления кода, мёртвого с точки зрения как бизнеса, так и языков программиро...

Автопровижининг телефонов Yealink. Часть 3 Мы продолжаем публикацию цикла статей, посвященных автопровижинингу IP-телефонов Yealink. Первая часть цикла была посвящена обзору функции автопровижининга, во второй части рассмотрен принципы работы с конфигурационными файлами. Завершающая статья цикла посвящена практическо...

Инженер получил два года тюрьмы за удаление репозиториев своего работодателя Облачный инженер Миклош Даниэль Броуди (Miklos Daniel Brody) был приговорен к двум годам тюремного заключения и возмещению ущерба в размере 529 000 долларов. Дело в том, что Броуди стер все репозитории с кодом у своего бывшего работодателя, желая отомстить за увольнение из ...

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

Компьютерное зрение сквозь года Как-то я столкнулся с довольно тривиальной, но новой для себя задачей - оптического распознавания символов (OCR). Так сложилось, что готовые инструменты (типа tesseract-ocr) мне не подошли, поэтому пришлось изобретать велосипед. Но к этому процессу я решил подойти со всей от...

Process Memory Map Я программист, а то что я еще и реверсер - ну... так совпало. И как любому из людей занимающимся реверсом мне всегда не хватает функционала отладчика. Постоянно приходится допиливать под конкретную задачу какие-то утилитарные вещи и однажды... Однажды я решил - хватит, кажды...

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

Быстрый запуск pet-проекта на Python и PostgreSQL Уверен, небольшие pet-проекты полезны не только для прокачивания навыков, но и для отвлечения от рабочей рутины и - нередко - для решения небольших практических задач. Курс рубля, как водится, - всегда актуальная тема. И на естественное желание быть в курсе курса рубля,...

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

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

Tilda и чат-бот: пример интеграции Привет, друзья! Сегодня мы поговорим о том, как  добиться эффективной обработки заказов, оформленных на сайте стандартного интернет-магазина на Tilda. Я на примере своего проекта (интернет-магазин карликовых кроликов) расскажу, почему менеджерам неудобно работать с заяв...

Яндекс запускает программу грантов для поддержки Open Source Команда Яндекса открыла ежегодную программу грантов Yandex Open Source. Принять участие может любой независимый разработчик или группа разработчиков, которые занимаются созданием решений с открытым исходным кодом. Фото: Shahadat Rahman / Unsplash Первые 15 победителей ...

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

Как донести секреты до dev-тачки и не пролить? Чем дольше работаю, тем больше вижу разнообразных практик по работе с секретами. Некоторые рабочие, другие — нет, а от части просто берёт оторопь. В статье я разберу варианты и расскажу о плюсах и минусах разных подходов.Поговорим мы о секретах в общем, но с практической точ...

Выполняем сторонние программы на микроконтроллерах с Гарвардской архитектурой: как загружать программы без знания ABI? Зачастую в процессе разработки собственных устройств или моддинга уже существующих, встаёт задача выполнения стороннего кода: будь то ваши собственные программы с SD-флэшек, или программы, написанные другими пользователями с помощью SDK для вашего устройства. Тема компилят...

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

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

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

Как выдавать бесплатные SSL сертификаты с помощью certbot, Nginx и Docker Всем привет! Одна из моих рутинных задач - это подъем новых проектов и микросервисов в облаках. Для этого практически всегда нужны домены и поддомены с наличием SSL сертификата. У меня выработался подход, с помощью которого я автоматизировал процесс выдачи сертификатов с пом...

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

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

Язык Crystal и математика Если вам вдруг захотелось посчитать собственные значения матрицы, решить задачу линейного программирования или оптимизировать нелинейную функцию, то вы может взять питон со SciPy, можете взять R или Matlab\Octave, для любителей экзотики есть Julia, а те кому важен каждый тик...

Марафон DataYoga “Ничего лишнего” — кому будет полезна неделя лучших практик визуализации данных Привет, Хабр! Сегодня мы хотим поделиться одним интересным событием, которое не может оставить равнодушным никого из сферы BI и визуализации данных. Марафон  будет проходить с 18 по 22 марта в онлайн-режиме (разумеется бесплатно) и включит в себя наработки ведущих визуа...

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

Снова поломался локальный репозиторий Debian 12.5, или почему Linux не для людей Недавно я пытался сделать локальную копию репозитория Debian 12.5, и вот казалось что всё наконец получилось, однако не прошло и суток как всё снова поломалось...

Обзор программного обеспечения для оперирования и управления фрезерными станками с ЧПУ на примере TS 1325 Всем привет! С вами компания 3Dtool!Часто при выборе фрезерного станка с ЧПУ у покупателя возникает вопрос - каким образом данный станок управляется, в каких программах можно подготавливать УП (машинный код, или управляющая программа), как оперировать инструментом в холосту...

Как я решал Advent of Typescript, и что я понял Возможно вы слышали про Advent of Code — ежегодное соревнование по решению задач на рождественскую тему. Начиная с 1 декабря, вплоть католического рождества, каждый день выкладывается новая задача. С каждым днем сложность задач возрастает.В дека...

Большие языковые модели (LLM) в задачах Сейчас в мире довольно много разговор о том, что LLM оставят всех нас без работы. Чтобы понять о чем речь рассмотрим на практических примерах какие задачи из коробки могут решать современные большие языковые модели (large language models, LLM).З.Ы. Подписывайтесь на мой теле...

Где мне это пригодится в жизни или применение Nothing в Kotlin на примере В данной статье я хочу показать, почему развитая система типов в языке программирования это здорово. Я попробую провести небольшой ликбез о таких на первый взгляд сложных вещах, как sealed-иерархии, ковариантность и тип Nothing на понятном практическом примере создания своей...

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

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

Автоматическое создание карточек слов для изучения иностранного языка или интеграция google translate в google sheets Добрый день.Недавно сделал инструмент для автоматизированного создания карточек для изучения слов — подумал что может быть кому то пригодится и как инструмент, и как техническое решение.Немного вводной информации: один из способов запо...

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

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

Большой код. Учимся генерировать F#-исходники с помощью Fantomas. Часть 1. Знакомимся с содержимым синтаксического древа В этом многословном, но сравнительно простом цикле я дам введение в генерацию F#-кода. Как правило, для этих целей в сообществе рекомендуют использовать Myriad, что, по-моему, не совсем правильно, но на его примере можно увидеть, что тема кодогенерации очень объёмна.Однако я...

Шаблонный сервис C# Всем привет, я разработчик из компании Bimeister и я хочу рассказать о шаблонном C# сервисе, который мы создали, чтобы унифицировать наши приложения и сократить время работы разработчиков над базовой настройкой приложения.Мы начинали небольшой компанией с одним основным серв...

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

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

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

AutoML на практике — как делать автоматизацию, а не её иллюзию Привет, Хабр! Меня зовут Алексей Рязанцев, я Junior Data Scientist в Лаборатории Машинного обучения Альфа-Банка. Свой путь в Лаборатории я начал со стажировки летом-осенью 2023-го года, на которой для меня была интересная задача — разработать с нуля собственный AutoML в Альф...

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

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

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

Инсайдеры в Release Preview Channel получили Windows 11 версии 23H2 Сегодня Microsoft делает обновление Windows 11 версии 23H2 Build 22631 (Windows 11 2023 Update) доступным в Release Preview Channel для участников Windows Insider Program for Business для проверки на устройствах в своих организациях. Это обновление поставляется в виде пакета...

Разворачиваем систему уравнений в граф Как-то во время учебы на инженера-теплоэнергетика я наткнулся на одну книгу [Попырин Л.С. Математическое моделирование и оптимизация теплоэнергетических установок. М. Энергия 1978г.], в которой был описан алгоритм построения расчётных схем энергетических устан...

Книга «Путь 1С-разработки. Не спеша, эффективно и правильно» Привет, Хаброжители! Книга Никиты Зайцева aka WildHare — пример того, как можно систематизировать и упаковать в текстовый формат профессиональный опыт, накопленный за почти двадцать пять лет успешной инженерной практики. Познакомьтесь с концепцией разработки прикладного ПО...

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

OmniFusion 1.1: мультимодальность теперь и на русском В прошлом году на конференции AIJ 2023 мы представили первую версию OmniFusion — мультимодальной языковой модели (LLM), способной поддерживать визуальный диалог и отвечать на вопросы по картинкам. Спустя несколько месяцев мы готовы представить обновление — OmniFusion 1.1 — S...

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

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

[Перевод] Создание PDF-файла размером с Германию Сегодня утром, пролистывая ленты социальных сетей, я уже в который раз встретил утверждение, что у PDF-документа есть максимально допустимый размер. Подобное утверждение появилось на просторах интернета ещё в 2007 году. Этот твит является характерным примером постов с анал...

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

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

Как создать ассистента для поиска по видео Всем привет! Меня зовут Георгий, я старший разработчик-исследователь в MTS AI. Одной из задач, которыми я занимаюсь в компании, является умная видеоаналитика. Это мощный инструмент, особенно с учетом современных технологий искусственного интеллекта, который может использоват...

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

Аналог Netflix — Plex — потребовал у GitHub удалить «пиратский» репозиторий Plex, популярная платформа для просмотра фильмов и сериалов, вступает в противостояние с GitHub из-за репозитория под названием «Plex-Reshare». Plex обеспокоена тем, что этот инструмент, предназначенный для того, чтобы пользователи могли делиться своими библиотеками Plex с ш...

Продолжение истории о несостоятельности репозиториев Linux в Desktop сегменте Линуксы всегда славились своей, очень мягко говоря, недружелюбностью по отношению к обычным пользователям, и репозитории не исключение из правил...

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

Использование LLM в автоматизации рутинных задач Всем привет!На связи Георгий Бредис, Deep Learning Engineer из команды Intelligent Document Processing в SberDevices. Наша команда занимается задачами автоматизации бизнес-процессов путем извлечения информации из неструктурированного контента и созданием сервисом суммаризаци...

Итерируемся по enum'ам в C++ В этой статье я хочу поделиться простым и очевидным трюком в C++, о котором, не смотря на его простоту и очевидность, как оказалось, не все знают.Предположим, у вас есть enum class, и вы хотите пройтись по его элементам, то есть вызвать какую-то функцию для каждого из значен...

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

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

Создание Chat-Ops бота в Mattermost на python Привет, Хабр!Компания АльфаСтрахование, как и многие другие, столкнулась с необходимостью замены используемых инструментов в связи с санкциями. За последний год мы отказались от Slack в пользу open-source аналога Mattermost, а Jira не без сложностей была заменена на Kaiten.В...

Практическая магия Istio при построении архитектуры крупных микросервисных систем. Часть 1 — функциональная Под Новый Год мы с женой пересматриваем одну популярную магическую сагу — хочется знаете ли в жизни волшебства. В IT волшебства тоже хватает — от танцев с бубнами до самых современных технологий, принцип работы которых проще объяснить тёмной магией. Так, например, бытуе...

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

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

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

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

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

Настройка CI/CD для самых маленьких разработчиков Считается, что построение CI/CD - задача для DevOps. Глобально это действительно так, особенно если речь идет о первоначальной настройке. Но часто с докручиванием отдельных этапов процесса сталкиваются и разработчики. Умение поправить что-то незначительное своими силами позв...

[Перевод] Поисковый движок в 80 строках Python В сентябре я устроился на должность поискового дата-саентиста и с тех пор часть моих обязанностей заключается в работе с Solr — опенсорсным поисковым движком на основе Lucene. Я знал основы работы поискового движка, но мне хотелось понять его ещё лучше. Поэтому я закатал рук...

Cобытия жизненного цикла компонента Друзья, привет!Практическое понимание событий жизненного цикла компонентов даёт возможность быстро анализировать и разрабатывать бизнес-задачи. Мы разберём 7 событий жизненного цикла компонентов на примере Composition API в Vue3 фреймворке. Читать далее

Почему бы и не поделиться опытом? (ФОТО) Хотел написать комментарий (к одной из статей), но в процессе понял, что он может заметно вырасти + оказаться самостоятельной и надеюсь полезной для кого-то статьёй. Поехали! Читать дальше →

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

Ваша карта не будет бита: как добавить Impact Map, CJM и USM в документ и не пострадать Наверняка у многих бизнес-аналитиков есть цель использовать особые артефакты: Impact Map, CJM (Customer Journey Map), USM (User Story Map). Особые, т. к. не так часто они встречаются в бизнес-требованиях, и даже бывалый аналитик может с непривычки растеряться, если не создаё...

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

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

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

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

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

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

Микрофронтенд с использованием Module Federation. Соединяем компоненты между системами на разных фреймворках Всем привет! Мы — Иван и Даниил, ведущие разработчики компании ITFB Group. У компании два собственных продукта — ЕСМ/CSP/BPM-платформа СИМФОНИЯ (документооборот, хранение контента, архив, портал) и система распознавания/обработки документов ITFB EasyDoc. Пару ...

Новый Monq 8.0 – российский all-in-one мониторинг на low и no code автоматизации: обзор возможностей и «невозможностей» Привет, Habr! Последние несколько лет мы активно строили зонтичный мониторинг и здорово в этом преуспели. Теперь у нас новая задача – построить лучший комплексный мониторинг на рынке РФ. С версией 8.0 Monq становится all-in-one мониторингом, который покроет максимум мон...

XMG1930-30HP: AV over IP для ЦОД Мы уже не раз в нашем блоге на Хабре рассказывали о технологии AV over IP, которая позволяет гонять 4K-видеопотоки не с помощью HDMI, а используя для этой цели IP-сети. Можно ошибочно думать, что это актуально лишь для каких-нибудь спортивных баров и концертных площадок. Эт...

Метод SMART. Что это и почему про него важно знать руководителю? Привет! Меня зовут Лера, я в управлении проектами уже 7 лет. Реализовывала проекты на стыке AR/VR/ML-технологий в сервисной компании. Сейчас работаю в EdTech и параллельно занимаюсь менторством начинающих проджектов и руководителей.Прежде чем мы перейдем к основной...

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

Без кого роботы-самосвалы не поедут Мои коллеги уже написали не одну статью для Хабра о наших роботах-самосвалах. Я хочу продолжить эту серию материалов, но мой рассказ будет не о лидарах, радарах и прочем железе, а о людях, задача которых – приглядывать за роботами в карьере, чтобы они случайно не нарушили пр...

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

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

Многорукие бандиты в задаче ритейла В настоящее время набирают популярность модели Reinforcement Learning для решения прикладных задач бизнеса. В этой статье мы рассмотрим подмножество этих моделей, а именно многоруких бандитов (multi-armed bandits). Также мы:- обсудим, какие задачи теоретически могут быт...

Россия планирует создать защищенные репозитории для хранения исходного кода программ до 2027 года Россия планирует создать систему защищенных репозиториев для хранения исходного кода отечественных программных продуктов к 2027 году

Есть ли жизнь после Microsoft Teams и OneDrive? Неизбежность отключения корпоративных пользователей от «облачных» продуктов Microsoft (и не только) стала очевидной последние два года. В текущий известный список продуктов, которые точно будут отключены, входят корпоративный мессенджер Teams, Office 365, облачное хранилище ...

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

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

Курс «Директор по компенсациям и льготам. Интенсив» Перед вами стоит задача научиться управлять численностью персонала и повысить качество работы сотрудников? Нужно разработать или оптимизировать систему вознаграждения за достижение KPI? Внедрить концепцию нематериальной мотивации? В программе даются ответы на эти вопросы: пр...

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

Прогресс в разработке мега-ракеты SLS: топливные баки готовы к заправке NASA продолжает работу над программой Artemis с целью возвращения астронавтов на Луну. Ракета SLS (Space Launch System) будет отвечать за запуск астронавтов в рамках этой программы. Недавно на сборочном заводе NASA в Мичуде (штат Луизиана), была успешно завершена сварка...

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

Использование Postgres и JSONB для хранения товаров, характеристик и цен Всем привет! Меня зовут Александр, в данное время я на фрилансе занимаюсь проектом по созданию очередного маркетплейса. В процессе работы мы столкнулись с далеко не новой проблемой организации хранения информации о товарах, имеющих различные характеристики и цену, зависящую ...

Как мы решали задачу оптимизации доставки грузов с использованием численных методов на примере метода имитации отжига В статье хотим поделиться своим опытом реализации алгоритма решения задачи маршрутизации на основе метода имитации отжига в Norbit CDS – умной системе управления доставкой. Проанализировав материалы, можно обнаружить различные предлагаемые способы решения VRP-задач (Veh...

[Перевод] Меняем моки репозиториев на in-memory реализации Одним из важнейших аспектов тестирования наряду с поиском ошибок в приложении является время, необходимое для его проведения. Если тестирование приложения занимает от нескольких минут до нескольких часов, то оно не подходит для разработки с использованием быстрого цикла обра...

Open Source спутниковая интерферометрия PyGMTSAR (Python InSAR) С тех пор, как я рассказывал на хабре про мой открытый проект спутниковой интерферометрии PyGMTSAR (Python InSAR библиотека) для обработки и анализа радарных данных спутников Sentinel-1, прошло много времени и сегодня PyGMTSAR представляет собой наиболее мощный инструмент ср...

Как установить обновление Windows 11 Moment 4 Следующее обновление функций Windows 11 будет доступно для широкой публики в Stable Channel 26 сентября 2023 года. Однако вы можете установить его прямо сейчас, если ждать не хочется. Для тех, кто не знаком с запутанным обновлением функций Windows 11, вот как Microsoft плани...

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

Как устроена наша PIM-система, и почему мы не используем ни реакт, ни микросервисы Пара слов обо мне. У меня никогда не было серьезного плана делать свой продукт, открывать под это дело компанию, погружаться в custdev и вот это вот всё. Днем я работал в сеньёр девелопером, по вечерам - делал pet-проекты типа онлайн версии настольной игры или онлайн-редакто...

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

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

Обзор синтаксиса Tailwind CSS Салют, Хабр!Tailwind CSS – это utility-first CSS фреймворк, который отличается от традиционных CSS фреймворков вроде Bootstrap или Foundation тем, что вместо предопределенных компонентов предлагает набор utility-классов, позволяющих стилизовать элементы прямо в HTML.Utility-...

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

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

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

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

Пишем сложный Page object для playwright тестов вместе с Dorama Всем привет! Сегодня расскажу о том, как удобно организовать Page Object для большого проекта с использованием Playwright и библиотеки Dorama. Большинство современных веб-проектов имеют сложный интерфейс с переиспользуемыми компонентами. Причем компоненты могут переиспользов...

Хотите присоединить Windows к домену ALD Pro (FreeIPA)? Спросите меня как Конечная цель проектов импортозамещения в ИТ — полный отказ от операционной системы Windows. Но, как говорится, гладко было на бумаге, да забыли про овраги. Может так оказаться, что быстро заменить какие-то клиентские корпоративные приложения, написанные под эту операционну...

Как мы разгрузили руководителей проектов и освободили время для «профильных» задач Руководители IT-проектов (РП) на рынке труда в остром дефиците: по данным hh.ru на 1 вакансию приходится 1,9 резюме. Поэтому часто в компаниях один РП ведет по 5-6 проектов. При такой загрузке успеть все и сохранить качество практически невозможно.Решить проблему с загрузкой...

Инструкция по переезду и миграции данных с Google Firebase на Self-hosted Supabase Всем доброго дня! Комментарии к моей предыдущей статье о том, как я развиваю свой pet-проект, а также различные законы, подразумевающие локализацию персональных данных на серверах, размещенных на территории РФ (в частности Федеральный закон от 21.07.2014 № 242-ФЗ «О внесении...

Spring Cloud Config и Git. Хранение и распространение конфигураций приложений Еще одна статья о том, как можно применять Spring Cloud Config Server при выборе Git репозитория как хранилища конфигураций приложений в облаке и не только в облаке. Читать далее

Проект «Селенит». Часть 6: Финализация Каждый проект рано или поздно заканчивается. При любом исходе проекта, удачном и неудачном, остаются документация, наработки, опыт, практики. Завершающая стадия проекта как раз и имеет целью разобраться с этим наследием, привести его в удобоваримое состояние. Одним словом, ...

Прокачиваем вёрстку ARIA атрибутами. Атрибут aria-label В прошлом месяце я рассказал, зачем нужна семантика, на примере атрибута role. Если вы не читали мою статью, пожалуйста, прочтите её перед тем, как читать эту. А сегодня я хочу рассказать про атрибут aria-label. В статье не будет заумных определений и бездумного копировани...

Реализация многооконного приложения на Vue 3 В наше время чуть ли не каждое приложение использует браузерный клиент. Это просто в написании, это кроссплатформенно, это легко в использовании. Браузерные решения уже активно используются и в промышленной сфере: аналитиками, операторами. WEB-приложения для управления промы...

Нейросети в образовании Привет, друзья! Знаете ли вы, что за большинством привычных вам услуг стоит ИИ? Он уже везде, не побоюсь этого слова, даже в образовательных продуктах, включая разнообразные курсы. Наша команда в ЛАНИТ последнее время работает над продуктами, которые используют такое чу...

Минцифры РФ создаст репозиторий данных для ИИ Министерство цифрового развития, связи и массовых коммуникаций России (Минцифры) объявило о планах создания репозитория государственных данных, предназначенных для применения в искусственном интеллекте (ИИ). Этот шаг направлен на обеспечение доступа российских разработчиков ...

Путь от монолита к разделению Compute и Storage: пример поиска «хранилища мечты» для большой аналитической платформы Для запуска и эксплуатации высоконагруженных ИТ-решений с петабайтами данных в активе, нужно проработанное решение, позволяющее гибко управлять ресурсами. Одним из критичных аспектов этого решения, является разделение Compute & Storage — разделение ресурсов инфраструктур...

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

Terraform в России Сейчас в связи с санкциями публичный Terraform репозиторий https://registry.terraform.io блокирует доступ из подсанкционных регионов.Как я пришёл к тому, что сделал опенсорс зеркало. Читать далее

Как мы разрабатывали свой Agile-велосипед и почему не используем популярные фреймворки (обзор и видео доклада) Всем привет! На связи Сергей Гончарук, менеджер проектов компании «Флант». 30 ноября и 1 декабря 2023 года прошла конференция TeamLead++ Conf 2023. Ниже — текстовый вариант моего доклада с конференции про опыт «Фланта» в построении процессов управления задачами для Dev-...

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

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

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

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

Как распространялся open-source-софт в 1992 году: Walnut Creek Software Распространение программного обеспечения с открытым исходным кодом никогда не было настолько простым и быстрым, как сейчас. Повсеместная доступность интернета и удобные инструменты позволяют получать доступ к открытому ПО в любое время. Но в начале 90-х, когда интернет лишь ...

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

Packer: мультисборка, пост-процессоры и пользовательские плагины Привет, Хабр!Packer — это open-source инструмент для создания идентичных машинных образов для множества платформ из одного исходного файла конфигурации. Т.е с пакером можно автоматизировать создание образов для Amazon EC2, VMware, Docker и т.д, используя единый процесс сборк...

[Перевод] Организация ML-монорепозитория с помощью Pants Приходилось вам копипастить фрагменты вспомогательного кода между проектами, попадая в ситуацию, когда несколько версий одного и того же набора команд оказывались в разных репозиториях? Или, может, вам надо было делать pull‑запросы к десяткам проекто...

Obtainium — агрегатор закачек apk из разных источников Android предлагает богатый выбор сторонних репозиториев и магазинов приложений помимо Play Маркета: F-Droid (opensource), Aptoide, APKMirror и фирменные магазины вендоров. Однако разработчики часто выкладывают приложения только на собственных сайтах или GitHub. Это требует с...

Cample.js — один из самых быстрых фреймворков без виртуального DOM в Интернете! Отчёт № 2 В данной статье я бы хотел провести последний отчёт по быстродействию Cample.js. За два года работы над фреймворком, сложились небольшие результаты, которые я бы хотел рассмотреть.Отчёт включает в себя сравнения по производительности с популярными библиотеками и фреймворком,...

Атака на SSH и взлом туннелей VPN SSH стал практически стандартом де-факто для подключения к серверу или удалённому десктопу. Поэтому уязвимости вызывают определённое беспокойство. Тем более в нынешних условиях, когда весь трафик в интернете записывается и сохраняется в хранилищах провайдеров и хостеров. Т...

CH32V003 первый проект. Мигаем OLED дисплеем и делаем измеритель концентрации CO2 В последнее время разработчики электроники испытывают трудности с поставками электронных компонентов. Одним из решений данной проблемы является переход на "исконно китайскую" элементную базу. Это решение подкупает ценой и доступностью, но пугает плохой документацией и неболь...

Reflection в iOS: как посмотреть содержимое любой сущности В Swift, как и во многих других языках программирования, есть возможность получать информацию о структуре объекта в Runtime. Для этого в языке есть специальный механизм — Reflection. С его помощью можно просматривать содержимое любых сущностей, не зная о них абсолютно ничего...

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

Intel заявила, что хочет производить чипы для AMD. И для всех остальных, кто только пожелает Intel не сбавляет обороты. Компания представила новую бизнес-единицу под названием Intel Foundry и новый техпроцесс Intel 14A Компания Intel всерьёз намерена стать вторым после TSMC производителем полупроводниковой продукции в 2030 году. И в рамках этой стратегии Intel...

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

Разработчики компании «Фродекс» представили новую систему Vulns.io Enterprise VM Vulns.io Enterprise VM – это новая система управления уязвимостями активов IT-инфраструктуры в автоматическом режиме. Новинка является решением для мониторинга защищенности крупных инфраструктур, превышающих 10 000 активов, использующим оркестратор Kubernetes. Vulns.io Enter...

Рисуем эффект «Таноса» на Android (и не только) Привет! Вопрос мобильным разработчикам: часто ли вам приходится работать с необычным UI? Если вы ответили утвердительно, то я по-доброму вам завидую. В своей повседневной практике мне в основном приходится работать со стандартным набором компонентов и их базовой настройкой. ...

Нововведения Zig версии 0.12.0, которые стоит упомянуть По случаю выхода версии 0.12.0 языка Zig я снова решил написать статью об этом языке. И в этот раз о том, что изменилось в языке относительно версии 0.11.0. Сразу уточню, что я не буду описывать все изменения. Ссылка на примечания к выпуску под цифрой выше. Список изменений ...

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

5 лучших переводчиков через камеру телефона на Android За время своего существования переводчики на Андроид претерпели серьезные изменения. Они стали не только точнее, но и функциональнее. Если раньше нам приходилось вводить текст самостоятельно, выверяя каждую букву, то теперь приложения делают все за нас. И все это благодаря ...

Перенести терабайты канбан-досок в облако: опыт команды Yandex Tracker Привет, меня зовут Мария Карпенко, я разработчик в команде Yandex Tracker — сервиса для управления процессами и проектами. Внутри Яндекса сервис  используется для постановки задач практически во всех командах, так что общее количество событий по задачам исчисляется уже ...

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

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

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

Создание своего UEFI загрузчика Привет Хабр! Мне 16 лет, я студент, учусь на первом курсе колледжа на программиста. Начал увлекаться низкоуровневым программированием на Ассемблере и C/C++Я заметил что на Хабре есть множество статей о написании своих простых "загрузчиков" для BIOS-MBR, которые выводят на эк...

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

«Ревизорро» в IT: тестируем суммаризацию текста в GigaChat и YandexGPT После появления на рынке API для беседы с ChatGPT 3.5 каждый второй заказчик решения на основе машинного обучения (ML) хочет внедрить у себя ИИ, который может красиво и содержательно общаться на русском языке.Меня зовут Екатерина, я IT-архитектор команды SimbirSoft, специали...

[Перевод] Вопросы по DevOps. Часть 1 Hello world! В первой части шпаргалки (вопросника, если угодно) на высоком уровне рассматриваются такие вещи, как сеть, HTTP, операционная система, виртуализация, хранилище etc., а также несколько технологий, используемых в сфере DevOps, таких как Prometheus, OpenStack, Pu...

Шаблонизируй это или Как ускорить разработку при помощи одного документа Привет! На связи лид команды аналитиков Magnus Tech Владислава Никитина.В заказной разработке каждый проект начинается со сбора бизнес-требований к будущей системе. Это важный этап, ведь именно здесь определяются контуры задач, которыми займутся разработчики. И с ним связан ...

freenginx: комментарии от Макса Дунина 14-го февраля Максим Дунин анонсировал форк nginx - freenginx (freenginx.org). Максим - старейший сотрудник nginx и core-контрибьютор nginx со времен Рамблера. Максим любезно согласился на интервью, вопросы задавал Алексей Рыбак (@rybakalexey), DevHands.io.[АР] Почему ты реш...

Теперь процессоры с малыми ядрами есть и у AMD. Компания представила первые потребительские APU с ядрами Zen 4c Компания AMD представила первые потребительские процессоры с малыми ядрами Zen 4c.   Новинки формально относятся к той же линейке Ryzen 7040U, но неформально их называют Phoenix2. Так как кристалл Phoenix2 содержит меньше ядер, чем кристалл Phonenix, то среди новы...

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

Решил я тут текстовую MMORPG на C++ написать Cразу уточню, это не гайд по созданию MMORPG на C++. Это нечто вроде моего дневника, куда я буду скидывать процесс разработки (Да, проект ещё не завершён, даже не близко, скорее только начат...). Почему я вообще тогда создал эту статью? Ну, коли ты к...

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

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

Криптовалютная биржа Bittrex Global объявила о полном закрытии 4 декабря Команда криптовалютной биржи Bittrex Global сообщила неприятную новость для своих пользователей - с понедельника, 4 декабря 2023 года в 21:00 по московскому времени, вся торговая деятельность на Bittrex Global будет прекращена. Об этом сообщается в соцсетях и на сайте п...

Наноразмерные кассетные бомбы, применяемые в онкологии Одними из самых жутких и одновременно эффективных изобретений нашей цивилизации являются кассетные боеприпасы и химиотерапия. На английском языке кассетные боеприпасы называются «cluster munition» или «cluster bomb». Именно с кассетными боеприпасами сравнивается удивительный...

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

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

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

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

Книга «Blender. Дизайн интерьеров и архитектуры» Привет, Хаброжители! Откройте для себя удивительный мир 3D-графики. Начните самостоятельно изучать основы 3D-моделирования и визуализации с помощью Blender. Действуйте уже сейчас! Blender уже завоевал мир. Его выбирают дизайнеры и художники, ведь в их распоряжении оказывае...

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

Два секундомера на логических микросхемах Привет, Хабр! Сегодня мы рассмотрим и соберём два цифровых таймера без микроконтроллера. Это прекрасные примеры того, каким образом можно добиться желаемого результата максимально простыми средствами. Читать дальше →

Тестирование UI в Compose Multiplatform Собираясь писать UI-тесты для приложения на Compose Multiplatform, я столкнулась с дефицитом туториалов и документации по этой теме. Из полезного были только пара статей (https://habr.com/ru/articles/674112/) и выступлений на недавних конференциях, а примеры в основном своди...

Что такое Mail Drop на Айфоне и как им пользоваться Представить, что у человека, с которым вы общаетесь, нет учетной записи в каком-нибудь мессенджере, в 2024 году практически невозможно. Однако иногда появляется необходимость отправить большой файл не через социальные сети и иные приложения, а, например, по e-mail. В такой ...

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

OpenAI запускает GPT Store — как создать свой custom GPT с внешними API вызовами Вчера вечером, 10 января 2024 г., OpenAI официально запустили GPT Store. Давайте разберемся, что это такое, и что оно дает. А затем создадим свой собственный GPT и добавим его в GPT Store.Концепция "custom GPT" в терминах OpenAI - это кастомный набор инструкций (custom promp...

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

Apple вернет топовый процессор в iPhone 16. Он получит чип A18 как iPhone 16 Pro и 16 Pro Max До сентября 2024 года остается еще больше 9 месяцев, а мы уже знаем об iPhone 16 практически все. Нет, это не Apple допустила так много утечек: просто компания стала слишком предсказуемой, и мы за годы профессионального погружения в ее деятельность научились с высокой долей...

Merlion Framework или как упростить работу с временными рядами Единственная причина для существования времени — чтобы все не  случилось одновременно.Альберт ЭйнштейнПривет! Меня зовут Дмитрий, я дата-инженер в SM Lab, и в этом посте хочу рассказать вам о Merlion Framework. В посте мы рассмотрим его архитектуру, полезные функции и о...

Автоматизируем рутину в Android разработке: плагин для создания шаблонного кода на примере создания -api -impl модулей Привет, хабр! Меня зовут Алексей, я ведущий разработчик платформенной команды и по совместительству лид архитектурной компетенции в проекте Альфа-Бизнес. Сегодня я расскажу, как можно автоматизировать повторяющуюся работу в андроид-разработке при помощи плагина для Android S...

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

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

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

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

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

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

Алгоритм генерации столбцов (Column Generation) Генерация столбцов - подход к решению задач смешанного линейного программирования (MIP) с большим кол-вом переменных или столбцов.В статье представил теоретическую предпосылку, схему алгоритма и python реализацию подхода. В практической части рассмотрел решение двух задач: з...

Превращаем TV-box в мини-компьютер: установка Linux Armbian на примере X96 Max+ 100W Одноплатные компьютеры своим появлением взяли на себя огромное количество задач и с каждым днём решают всё больше наших проблем. Но многие окружающие нас бытовые устройства являются одноплатными компьютерами с практически с идентичной многим привычным SBC (single board compu...

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

Смотрим, как устроен первый сторонний магазин приложений для iPhone Ни для кого не секрет, что выход iOS 17.4 стал революцией для операционной системы iOS. Впервые на смартфонах компании Apple появилась возможность устанавливать приложения не из App Store. Да, это послабление действует лишь на территории Евросоюза, но, как многие справедлив...

7 причин не обновлять компьютеры Apple на примере macOS Sonoma 14.4 macOS Sonoma 14.4 может принести вашему компьютеру больше проблем, чем пользы. Изображение: macrumors.com Владельцы техники Apple всегда отдельно отмечали срок поддержки своих гаджетов новыми версиями программного обеспечения. В любом споре это был главный аргумент, чтобы ра...

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

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

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

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

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

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

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

Как много языков может влезть в одного программиста? Всем привет, я Серёжа, технический лидер iOS-разработки. Сегодня хочу поговорить о многогранности мира программирования, а именно о количестве языков, причинах, по которым они нам нужны, и о том, зачем одному программисту несколько языков.Если с каких-то рассуждений прямо си...

Книга «Разработка приложений на базе GPT-4 и ChatGPT» Привет, Хаброжители! Эта небольшая книга представляет собой подробное руководство для разработчиков на Python, желающих научиться создавать приложения с использованием больших языковых моделей. Авторы расскажут об основных возможностях и преимуществах GPT-4 и ChatGPT, а та...

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

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

Сборник советов, как упростить работу с YAML-файлами YAML (.yml) — популярный язык для конфигурационных файлов, широко используемый DevOps в подходе «Инфраструктура как Код» (IaC). Несмотря на то, что работать с ним бывает проще, чем с тем же JSON (особенно в контексте взаимодействия с большими объемами данных), иногда использ...

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

[recovery mode] Где изучать C# в 2024. Бесплатные курсы и полезные ресурсы Существует несколько причин, почему стоит учить C# в 2024 году через бесплатные курсы:1. Популярность: C# является одним из самых популярных языков программирования, особенно в сфере разработки приложений для платформы Microsoft. Изучение C# открывает двери для работы над ши...

2-нм техпроцесс и стоимость гаджетов Apple: что общего и почему последние будут дорожать Если компания Apple в гаджетах следующих поколений начнёт использовать 2-нм процессоры, а вероятность этого велика, то стоимость новых устройств может неприятно удивить поклонников бренда. Чипы по 2-нанометровому техпроцессу сейчас осваивает эксклюзивный «яблочный» партнёр —...

Apple разогнала SSD в новых MacBook Air с M3, но добавила косяк с процессором В новом MacBook Air M3 Apple установила быстрый SSD. Изображение: tomsguide.com 8 марта Apple начала продажи MacBook Air M3. Первые покупатели, получившие компьютер на руки, сразу же начали его углубленно тестировать. К сожалению, большую часть нововведений нового MacBook Ai...

Global Talent visa для IT-ника. Путь с нуля Недавно я завершил свой длинный путь и получил Global Talent visa в Великобританию. О первых выводах я поделился в канале, а сейчас хотелось бы разложить все по полочками и подготовить гайд, который поможет практически любому стать обладателем этой визы.В этой статье я поста...

Расстаемся с облаками на примере Sonoff Привет всем! В своем «умном доме» я решил, что все устройства должны быть завязаны на локальном сервере, чтобы без интернета он не превратился в тыкву. Но почти всё так или иначе привязано к облаку. Этот пост о том, как отвязать устройства Sonoff от облаков. Да, я знаю,...

Об импортозамещении MATLAB/Simulink на примере модели динамики авиационного средства поражения Когда-то давно меня попросили разработать модель динамики полета АСП (авиационного средства поражения) в отечественном ПО, в среде SimInTech, причем разработать не с нуля, а тупо повторив уже созданную ранее модель в Матлабе (с Симулинком), и любезно выложенную в публичный д...

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

«Разгоняем» HashSet, HashMap и циклы на примере Dart Если вы занимались профилированием своего приложения, то, глядя на CPU Flame Chart, вероятно, испытывали смесь досады и азарта, глядя на особо «жирный» метод. Досады – что ваша программа всё ещё не идеальна по скорости. Азарт – от того, что вы можете докопаться до причины пр...

Эпоха Flash: как разработчики в одиночку делали мировые шедевры Мы уже поговорили об инди-студиях и об играх, которые разработчики создавали в одиночку. В комментариях к последней статье поступило замечание о том, что пропущены целые эпохи – и в их числе эпоха Flash-игр. Спасибо за идею! В 1996 году появилась платформа FutureSplash ...

Как мы переводили проект на CMake В статье мы расскажем о том, как переводили проект с рекурсивной сборочной подсистемы ЗОСРВ "Нейтрино", представляющей собой набор расширений инструмента GNU Make на сборочную систему CMake: с какими нюансами нам пришлось столкнуться, какие преимущества мы получили...

Как написать новостной Телеграм-канал если ты не программист. Часть первая Всем привет! Попробую написать трилогию покорения основ Python, отражающую мой путь любителя с “паяльником”. Тут не будет основ, чистого кода, отсылок к требованиям PEP-8, практически не будет ООП.Всех суровых Senior’ов, читающих данный материал, прошу понять и простить. Я н...

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

[Перевод] Отсечение и поиск / Prune and search Решал задачу на LeetCode (Word Search) и наткнулся на незнакомый мне термин "search pruning", либо "Prune and search". Немного погуглив, узнал, что это метод решения задач оптимизации, на Википедии есть соответствующая статья (ссылка). На русском языке я не нашел такого терм...

[Перевод] Разработка SQL Expert Bot: подробный гайд по использованию Vercel AI SDK и API OpenAI OpenAI заложила фундамент для революции в сфере искусственного интеллекта с появлением ChatGPT, открывая новую эру в области AI, которую активно используют как отдельные люди, так и бизнес‑сообщества. OpenAI даже предоставила API для разработки ...

Как я попробовал написать авиасимулятор Давным-давно, в 2015 году я написал свою первую статью на хабр: Пишем простую* игровую физику самолёта Статья появилась не сама по себе — я писал игру, но так её и не доделал. За предыдущие девять лет я несколько раз возвращался к проекту, что-то улучшал, но по-факту он так...

Что будет, если в России заблокируют Википедию и чем пользоваться вместо нее Несмотря на то что в России уже давно ведутся разговоры о возможном ограничении работы YouTube, и отечественные блогеры медленно, но верно мигрируют на VK Видео, первым, судя по всему, заблокируют не его, а Википедию. Ей может грозить блокировка по закону, запрещающему попу...

IT_ONE и «Сколково» выбрали 8 финалистов конкурса стартапов в области ИИ для решения HR-задач IT_ONE и Sk Fintech Hub провели конкурс технологических проектов на базе ИИ для HR-сферы. В рамках конкурса оценивались решения, направленные на улучшение HR-процессов в компании. Организаторы получили 137 заявок от компаний из 30 городов России, которые хотели принять участ...

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

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

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

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

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

Как мы решили вопрос с размещением Телеграм-бота Важность присутствия в интернете и доступность для широкой аудитории 24/7, сложно переоценить. Однако, эта статья предназначена для начинающих разработчиков, делающих свои первые шаги в мире создания и развертывания чат-ботов. Для опытных разработчиков, уже имеющих собственн...

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

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

«Как человек реагирует, как образуется команда», — нештатные ситуации с МКС смоделируют в эксперименте SIRIUS-23 По словам директора Института медико-биологических проблем РАН Олега Орлова, нештатные ситуации, произошедшие на Международной космической станции (МКС) в течение последних лет, будут смоделированы во время эксперимента SIRIUS-23. Напомним, годовой изоляционный эксперим...

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

Как мы анализируем потребление памяти нативными приложениями Технологическая платформа 1С:Предприятие – это большой программный продукт (только на С++ - более 10 миллионов строк кода, а есть ещё Java и JavaScript). Подробнее про устройство платформы можно прочитать тут.В процессе эксплуатации решений, созданных на платформе 1С:Предпри...

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

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

Планируем путешествие — задача коммивояжера (TSP) для построения оптимального маршрута С вами Алексей Ложкинс, эксперт по анализу данных и машинному обучению в ПГК Диджитал. Мы разрабатываем цифровые продукты для логистической отрасли, в первую очередь, для ж/д перевозок.В кулуарах московского офиса ПГК мы обсуждаем и нерабочие темы. Топовую строчку в темах не...

Как сделать GIF из видео на Android-смартфоне Android-смартфоны поддерживают самые разные типы файлов, включая GIF. Аббревиатура расшифровывается как Graphics Interchange Format, что в переводе означает формат для обмена изображениями. Обычно в GIF делаются анимированные картинки, и при желании вы можете сделать гифку ...

Краткий обзор развития лямбда-выражений в C++11, C++14, C++17 и C++20 Привет, Хабр!Сегодня рассмотрим лямбда-выражения в C++ и их эволюцию с момента появления в стандарте C++11 и до последних обновлений в C++20.Лямбда-выражения в C++ — это анонимные функции, которые позволяют писать инлайн-выражения прямо там, где они используются. С их помощь...

Fastlane для Android разработчиков Рост команды требует большего вовлечения в процессы и договорённости, которые, в свою очередь, требуют автоматизации и инспекции. Можно взять bash‑скрипты и закрыть ими эту потребность, но насколько это будет удобно? Тут нужен инструмент, который упростит разр...

[recovery mode] Дайджест полезных материалов из мира Golang за неделю Подборка полезных материалов и репозиториев представляет собой ценный ресурс для всех поклонников Go, желающих быть в курсе последних тенденций и развития языка. Давайте вместе исследуем самые актуальные и интересные новости из мира Go за прошедшую неделю. Читать

ABC-XYZ анализ на Python. Управление ассортиментом и схемами поставок Управление ассортиментной матрицей и складскими запасами является нетривиальной задачей для бизнеса, требует аналитики и научного подхода к решению задачи. Одним из методов управления ассортиментом и закупками является ABC-XYZ классификация. Рассмотрим ее реализацию на Pytho...

Как использовать ChatGPT для разработки и учебы. Четыре сценария Привет, Хабр! В 2023 году искусственный интеллект (далее ИИ)  вышел на тот уровень популярности, когда о нем не говорил только ленивый. Все больше компаний активно начали обсуждать свои разработки в этой области, а такие модели как Midjourney, ChatGPT, Gemini (ex-Bard),...

Организация корпоративной ИТ-инфраструктуры для 1С (50, 100, 200 пользователей) В данной статье мы рассмотрим пример подхода для создания инфраструктуры 1С в зависимости от количества пользователей. Читать далее

Фаззинг библиотек Ещё недавно, как я начал изучать веб хакинг, я счёл интересным занятие исследовать Linux и Windows на предмет бинарных уязвимостей. Хотя легально заработать в одиночку хакером у нас в России я думаю можно только веб хакингом, я всё равно хочу изучать все интересующие аспекты...

Как звонить родным и близким по всему миру бесплатно и без регистрации через Gem Space Gem Space – многофункциональное приложение (суперапп) от компании DevTeam-Group, предоставляющее возможности для безопасного общения между родными и близкими, коммуникаций по ведению бизнеса и развлечений. Сервис имеет встроенную блог-платформу с обширным каталогом каналов ...

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

Правда ли то, что национальный корпус русского языка «приватизирован» Яндексом? Где-то неделю назад на Хабре увидел тезис другого автора о том, что мол НКРЯ поддерживается на бюджетные средства, но де-факто контролируется компанией Яндекс, которая ведёт себя как собака на сене и де-факто приватизировала корпус и никому его не даёт. Такое же примерно мне...

Инструкция по SCA: генерация SBOM, инструменты, отличия Анализ сторонних компонентов ПО становится всё более актуальным в свете увеличения числа уязвимостей в открытом исходном коде. Популярные репозитории содержат более 20 тысяч потенциально опасных пакетов. Сегодня мы поговорим о спецификации SBOM (Software Bill of Material), о...

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

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

8 ГБ ОЗУ достаточно, да, Apple? Тесты показывают, что MacBook Pro 14 M3 с 16 ГБ памяти может быть в четыре-пять раз быстрее версии с 8 ГБ Компания Apple недавно заявила, что 8 ГБ ОЗУ на MacBook Pro M3, вероятно, аналогичны 16 ГБ в других системах. И пусть такое заявление крайне сложно проверить, теперь точно можно сказать, что 8 ГБ для нового MacBook Pro – это проблема как минимум в некоторых прилож...

Как джуну отрастить софты: советы и реальные истории. Часть 2. Отвечать за результат Привет! На связи Митя Кожевников и Юра Соколов из Mindbox, и это вторая часть гайда по софтам для джунов. В первой части мы говорили о том, что значит «приносить пользу» в разработке, а в этой поговорим об ориентации на результат.О гайде. Этот гайд — внутренний документ...

Внешне почти копия Mac Studio, но с CPU Intel и видеокартой Intel, AMD или Nvidia на выбор. Представлен мини-ПК FEVM FN06GMini Компания FEVM представила мини-ПК FN06GMini, который внешне почти копирует Mac Studio.   Новинка не идентична продукту Apple, но сходство очень велико. По размерам новинка китайской компании даже чуть меньше своего условного аналога: 168 х 168 х 92 мм. То есть ПК ...

Реализация многофункционального терминального интерфейса для МК AVR В данной статье речь пойдёт о разработке многофункционального терминального интерфейса для МК (на примере МК Atmega32 и терминала HyperTerminal. Многофункциональность в моём случае будет заключаться в обработке управляющих символов и управляющих последовательностей с целью р...

Можно ли пользоваться iPhone без учетной записи Apple ID Если вы хотя бы один раз активировали Айфон, то обратили внимание, что на одном из первых экранов вам предлагается ввести данные вашей учетной записи Apple ID, чтобы продолжить взаимодействие со смартфоном. Если аккаунта у вас нет, то здесь же его можно и создать. Но что, е...

Управление API или API Security? Что это такое? В сфере кибербезопасности существует постоянная гонка между атакующими и защитниками. Этот процесс можно сравнить с визуальным процессом гонки, где основная цель - это скорость. Начинается все с фазы разведки, где происходит инвентаризация ресурсов. Затем команды приоритизир...

Реализация чата на Flutter при помощи вебсокетов Всем привет, на связи PurplePlane! В этой статья мы хотели бы рассмотреть реализацию простого чата на языке Dart, используя пртокол websocket.Рассмотрим пример использования вебсокета при реализации простого чата с помощью библиотеки web_socket_channel. Читать далее

[Перевод] Как я уменьшил размер образа docker на 40% Ежедневно по работе я сталкиваюсь с Dockerfile, написал несколько из них самостоятельно, создавал контейнеры и всё такое. Но я никогда не публиковал их в реестре docker hub. Мне хотелось создать ugit — инструмент для отмены команд git (написанный в виде шелл-скрипт...

Infinite scroll (бесконечный скролл) +Virtualization (виртуализация) на примере ReactJS+ RTK Query На сегодняшний день любое уважающее себя предприятие, будь то магазин строительных товаров или компания по предоставлению услуг в сфере бизнеса, все они стремятся «выложить» свои товары и услуги в интернет. Это и понятно – мы живем в век бурно развивающихся технологий и дост...

Нейросеть Sora превращает текст в видео — можно ли пользоваться ею прямо сейчас? Нейросеть Sora от OpenAI умеет многое — даже создавать мультфильмы в стиле Pixar В конце 2022 года компания OpenAI представила миру нейросеть ChatGPT, которая перевернула мир. Базовая версия доступна бесплатно и может ответить практически на любой вопрос и даже выполнить раб...

Книга «Kali Linux в действии. Аудит безопасности информационных систем. 2-е издание» Привет, Хаброжители! В этой книге рассматриваются методы обхода систем безопасности сетевых сервисов и проникновения в открытые информационные системы. Информационная безопасность, как и многое в нашем мире, представляет собой медаль с двумя сторонами. С одной стороны, мы ...

Angara Security запускает услугу по внедрению доверенного репозитория на базе IT-инфраструктуры заказчиков По оценке экспертов, от 50 до 85% IT-решений в реестре отечественного ПО разработаны с использованием открытого кода.

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

Очередной взгляд на собеседования. Часть 1 Регулярно мы видим в интернетах множество размышлений или криков души на тему содержания собеседований в IT. Мол, и интервьюировать не умеют, и задачи дают не релевантные, и вопросы бессмысленные, и, вообще, собесы в IT это ритуал и карго-культ. Сидит там интервьюер и думает...

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

НаQA нам QA? Привет, Хабр! Меня зовут Ксения, я руководитель отдела QA в компании ISPsystem. О том, как я собирала команду, можно почитать в моей предыдущей статье. Сейчас в нашем отделе 14 человек. Чем шире становится команда, тем больше ожиданий на нее возлагается относительно кач...

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

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

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

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

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

Точка доступа Wi-Fi из камеры видеонаблюдения на OpenIPC Пару десятков лет назад меня впечатлила новость, что какая-то корпорация смогла использовать настолько крутые технологии, что впихнули веб-сервер в коннектор RJ45. Для чего это нужно было уже и не вспомню, но сейчас, ковыряясь со своими камерами видеонаблюдения, меня осени...

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

[Перевод] Реализация Graceful Shutdown в Go Изящное завершение работы (Graceful Shutdown) важно для любого длительного процесса, особенно для того, который обрабатывает состояние. Например, что если вы хотите завершить работу базы данных, поддерживающей ваше приложение, а процесс db не сбрасывает текущее состояние на ...

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

Стиль написания кода на Wolfram Language Я как большой фанат Wolfram Language (WL) очень часто изучаю открытые репозитории с кодом на этом языке. Изучив достаточно много кода я заметил, что стиль написания этого кода очень сильно разнится от проекта к проекту. Но так же я изучил много встроенных пакетов в Mathemati...

Способ автоматизации процесса получения BIM-моделей с Revit Server и последующей сборкой в Navisworks. Подробный гайд Одной из операционных задач BIM-отдела является подготовка и формирование проприетарных файлов моделей для последующего использования в тех или иных целях. На примере работы с программными продуктами Autodesk — Revit и Navisworks, подразумевается определённая логика разбивки...

Как ChatGPT, только от Илона Маска, с юмором и ответами на острые вопросы. Представлен чат-бот xAI Grok Компания Илона Маска xAI, как и было обещано, вчера запустила своего чат-бота Grok, который можно назвать прямым конкурентом для ChatGPT.  Фото:  Marketwatch/Everett Collection Пока что доступ к ИИ есть у небольшой группы пользователей социальной сети X....

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

[recovery mode] Решаем дифференциальные уравнения с помощью Python часть 1 Начнем пожалуй с того, что решать дифференциальные уравнения вручную может быть не совсем просто. На данном ресурсе http://mathprofi.ru/differencialnye_uravnenija_primery_reshenii.html есть шпоры как это делать вручную, там есть множество подсказок по различным разделам высш...

Случай является на помощь тому, кто неустанно ищет Привет, Хабр.Выдался вечер, в который я всё-таки дозрел поделиться с вами небольшой рефлексией. Я на Хабре уже три года и три месяца, почти всё это время мне удаётся публиковать примерно по 4 лонгрида в месяц, а с некоторого времени — и по паре переводов в месяц (в этом блог...

Запуск проекта в Kubernetes за 60 минут: инструменты, GitLab, Terraform Привет, Хабр! Меня зовут Илья Нырков, я архитектор в VK Cloud. В своей работе встречаюсь с желанием партнеров (это и крупный энтерпрайз, и различные стартапы) использовать Kubernetes, но их останавливает сложность поднятия, конфигурирования кластера, деплоя в нём приложени...

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

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

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

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

Немного паранойи: весёлые огромные уязвимости, которые порождают ChatGPT и LLM-модели LLM сейчас встраивают практически везде. Рождается очень много возможностей для атак. Уже появились атаки на дозаполнение кода. Это вообще самое смешное: код записывается в публичный репозиторий, модели считывают его при обучении, запоминают, при подсказках он всплывает, в...

FreeIPA vs Samba AD Используя продукты ведущих вендоров, мы не всегда задумываемся о том, что в них реализованы лучшие практики, позволяющие экономить на администрировании, повышать безопасность инфраструктуры и обеспечивать удобство для работы пользователей. Но эти детали, как шило в... мешке,...

Пчелошеринг — майнинг мёда Как мы сделали онлайн-сервис из пасеки. Всем привет, меня зовут Артём. У меня есть два любимых дела в жизни: 1) IT и особенно дизайн; 2) Природа и экстенсивное сельское хозяйство. Хочу рассказать о своём «проекте выходного дня», который появился на стыке моих увлечений.Суть ...

Ключи в базе данных: практический обзор для начинающих системных аналитиков Всем привет! Меня зовут Оксана, я системный аналитик из компании EvApps. Что побудило меня написать эту статью? Я обучаю стажеров – системных аналитиков, и недавно столкнулась с такими вопросами, о которых раньше даже не задумывалась.Вопросы были связаны с разными видами клю...

Новая файловая система Composefs для Linux: что это такое и как она работает В ноябре 2022 года Александр Ларсон, сотрудник Red Hat, разработавший Flatpack, предложил реализацию файловой системы Composefs. Она в некоторых моментах похожа на Squashfs, подходит для монтирования образов в режиме «Только для чтения». Особенности новой ФС — совместное хра...

Качественные рекомендации в e-commerce — компоненты основных алгоритмов В первой статье цикла мы рассказали про свойства алгоритмов качественных рекомендаций, которые необходимы для практического использования алгоритма. Во второй статье мы рассмотрели компоненты алгоритма «Сопутствующие товары». Но система рекомендаций для интернет-магазина сос...

Что сильнее разряжает Android-смартфон: Wi-Fi или мобильный интернет 4G Смартфон без интернета практически перестает быть умным устройством, ведь для доступа к большинству его функций требуется подключение к сети. Из-за этого мы вынуждены использовать два совершенно разных типа беспроводного соединения: Wi-Fi и 4G. Оба предлагают нам выход в се...

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

Как использовать макросы для систематизации документов «как в Confluence»? Привет! Приятно ведь читать хорошо оформленные статьи на уютном хабре? В которых часть текста спрятана под катом, есть подписи к картинкам, красивые и понятные таблицы и все остальные плюшки? Я думаю очень приятно. Поэтому предлагаю рассмотреть немного полезных советов, о то...

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

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

DR, SDN, V2V: обзор свежего релиза платформы виртуализации zVirt 4.1 Хабр, привет! На связи Алексей Зотов из К2Тех, и сегодня я хочу поговорить об одном из российских решений для виртуализации. Сегмент этот в каком-то смысле уникален. Если в целом по рынку заказчик выбирает между 5–6 отечественными продуктами для решения задачи импортозамещен...

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

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

Облачная трансформация ИТ инфраструктуры современной компании. Практический опыт Х5 Group Привет, меня зовут Максим Осорин, я руковожу Х5 Облаком в Х5 Group. Хочу рассказать про то, как мы трансформируем ИТ инфраструктуру крупнейшего в стране продуктового ритейлера. Зачем это нужно, как мы это делаем, с какими сложностями сталкиваемся и как их преодолеваем.Данная...

Open-source ML от Apple Привет, Хабр! После недавнего релиза Apple VIsion Pro я задумался над тем, какой вклад компания внесла в open-source ML, ведь, очевидно, было много предпосылок, наработок и технологий, о которых массовый пользователь не знает. Но все это гарантировано сыграло роль в появлен...

Как задеплоить сайт. Инструкция для новичков Опубликовать сайт можно разными способами. Например, если проект лежит в репозитории на Гитхабе, можно воспользоваться GitHub Pages. Но если вы не боитесь трудностей, советуем попробовать кое-что поинтересней — разместить сайт на облачном сервере. Новичкам этот способ може...

Эффективные вложения в ИТ: Как посчитать ROI при внедрении ПО на примере системы маскирования данных Всем привет! Меня зовут Али Гаджиев, я Директор по продукту в компании Crosstech Solutions Group. Мы с моими коллегами Продакт-менеджером Дмитрием Симаком и Руководителем отдела анализа данных и машинного обучения Владимиром Коршуновым решили поднять ту тему, которую, зачаст...

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

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

Микрополосковые СВЧ фильтры Опишу процесс создания микрополосковых СВЧ фильтров на примере нескольких ФНЧ и одного полосового. Создавал я их практически впервые, предварительно прочитав несколько книг и статей на эту тему. У меня есть синтезатор частот, который предполагалось использовать в установке и...

[Перевод] Рекурсивные CTE Одним из наиболее важных применений CTE являются рекурсивные запросы, для которых CTE является фактически единственным средством реализации. Как отмечалось в предыдущей статье, в Books Online есть несколько примеров использования CTE, включая и рекурсивный CTE...

Какой телевизор на Android TV купить? Читатели AndroidInsider.ru назвали самый народный бренд С уходом популярных мировых брендов с российского рынка их продукция не исчезла из страны полностью. Своевременное разрешение параллельного импорта довольно быстро решило эту проблему, не дав дефициту проявить себя по-настоящему. Тем не менее, отсутствие официальных поставо...

Глубина кроличьей норы: бинарная граница и ABI C++ Вопрос ABI (Application Binary Interface), бинарной границы и бинарной совместимости в C++, раскрыт на просторах интернета не так хорошо как хотелось бы. Особенно сложно в его изучении приходится новичкам, потому что эта тема связана со множеством деталей нарочно скрытой от ...

Swift Utilities — Equatable для сложных Enum За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не большая статья. Я покажу, как пользоваться этой утилитой, продемонстрирую её в ...

Практические аспекты ранжирования ответов виртуального ассистента Салют Всем привет! Меня зовут Аня Максимова, я занимаюсь NLP в команде Нейронные сети продукта Собеседник! 5 апреля проходила конференция Giga R&D Day, где мой коллега — Артем Снегирев рассказывал про практические аспекты ранжирования ответов виртуального ассистента ...

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

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

[Перевод] Разбиение файлов Terraform на компонуемые слои Terraform позволяет создать облачную инфраструктуру с помощью всего одной команды. Допустим, вы хотите запустить Elasticsearch и Kibana в кластере Kubernetes. Для этого можно написать несколько файлов .tf и выполнить команду terraform apply для инициализации кластера Kubern...

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

Разбираемся с Bluetooth Low Energy на примере превращения USB-клавиатуры в беспроводную Меня давно интересовало, как работают беспроводные клавиатуры, но как-то не сильно вдавался в подробности, пока не возникла идея превратить свою механическую клавиатуру в беспроводную. Честно говоря, не думал, что узнаю так много нового и интересного. Вероятно, у многих е...

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

Разбираем TLS по байтам. Часть 1: кто такой этот ваш HTTPS? Подключение к сайту бывает защищённым, а бывает нет — это надо знать всем детям. Только мало детей знают, что это значит и как работает. Я, изучая веб-разработку, узнал об HTTP. Разобраться в нём несложно: в каждой статье о протоколе множество наглядных примеров запросов ...

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

[Перевод] Пишем графический ASCII-калькулятор с помощью стандартной библиотеки Си Программа calculator.c родилась как школьный проект в рамках Student Innovation Scholarship. Сперва я решил написать простой инструмент для построения графиков функций с помощью символов ASCII, но после завершения первого прототипа понял, что задача намного сложнее, чем пре...

У меня зазвонил Репка-фон. Делаем телефон на базе Repka Pi 3 с применением модуля SIM868 Делаем программно-управляемый телефон или даже узел связи на базе одноплатного компьютера Repka Pi и модуля платы функционального расширения для GSM связи. Просто поражают возможности одноплатных компьютеров в формфакторе Raspberry за счёт применения с использованием их 40 p...

5 лучших фишек Google Pixel 8, ради которых ты еще больше захочешь перейти с Айфона на Андроид Pixel снова круче iPhone. Это топ за те же деньги! Не так давно Гугл провела очередную презентацию, на которой показала новые Pixel 8 и Pixel 8 Pro. Флагманские смартфоны компании с каждым годом становятся все более узнаваемыми, а подтверждением этому стало то, что Pixel ока...

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

Почему инфраструктура big tech обычно состоит из самописных решений Привет! Предлагаю поговорить о том, почему крупные IT‑компании так любят создавать в своей инфраструктуре собственные решения. Казалось бы, напрашивается ответ: NIH‑синдром и ничего более. Но такой ответ вряд ли может считаться сколько-нибудь полным,...

[Перевод] Простые языки программирования Мне нравятся простые языки программирования, такие как Gleam, Go и C. Знаю, я не один такой. Есть что-то чудесное в работе с простым языком: каково его читать, использовать в команде, возвращаться к нему спустя долгое время и т.д. В этом посте я хочу конкретизировать, в чём...

Наш самый психоделичный бизнес-проект Всё началось с гуся и Ильи enjoykaz. Последний спросил, что я хочу разовой выплатой на момент основания компании. Я попросил половину гуся с кнедликами, потому что Илья только переехал в Чехию (когда это ещё не стало мейнстримом). Он очень педантично записал это прямо в со...

Почему гарнитура Apple Vision Pro такая дорогая? Оказалось, что стоимость компонентов устройства превышает 1500 долларов Гарнитура Apple Vision Pro стоит очень немало. Возможно, устройство могло бы быть дешевле, но данные аналитиков Omdia говорят о том, что и стоимость компонентов шлема весьма высока.  Apple установит камеру прямо в наушники AirPods? Компания работает над таким про...

Ценности как инструмент принятия сложных решений: как мы упрощаем взаимодействие команд и приходим к единому мнению Последнее время мы активно растем. За год количество сотрудников «Фланта» увеличилось в два раза. И каждый специалист приносит в компанию свои опыт, видение и подходы. Мы ценим, что у нашей команды есть разные точки зрения на процессы, развитие инструментов, вопросы взаимоде...

Анонс Windows 11 Insider Preview Build 22635.3212 (канал Beta) Доброе утро, друзья! Microsoft выпустила новую предварительную сборку Windows 11 (версия 23H2) под номером 22635.3212 (KB5034845) для участников программы Windows Insider на канале Beta. Полный номер сборки: 10.0.22635.3212.ni_release_svc_betaflt_prod1.240216-1654. Для инса...

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

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

Превращаем 3D модель в настоящую скульптуру⁠⁠ Хочу поделиться некоторыми деталями своей работы включая использование ZBrush и 3D печати для создания скульптур из металла.За последние несколько лет, я накопил определенный опыт работ такого рода. Но кроме коммерческих проектов, у меня не ослабевает интерес к литью разных ...

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

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

Решаем задачу асинхронного ввода-вывода с библиотекой Asio Привет, Хабр! Меня зовут Илья Казаков, я C++ разработчик в команде систем хранения данных  компании YADRO, одна из моих задач — реализация эффективных IO-bound программ под Linux. На одном из проектов мы с командой использовали Asio — библиотеку C++ для сетевого и ...

Настройка C++ проекта c OpenMP. Обертывание С++ для Python с помощью pybind11 и CMake В статье описан практический пример настройки проекта на языке C++ с использованием, в качестве примера, библиотеки для многопоточных вычислений OpenMP , а также дальнейшее обёртывание для использования в проектах написанных на Python при помощи библиотеки Pybind11. В качест...

Google придумала свою нейросеть, которая лучше Chat GPT Еще в мае 2023 года компания Google объявила о том, что планирует использовать две свои исследовательские группы — Brain Team и DeepMind — для одного большого проекта. Компания хотела объединить их в единое подразделение под названием Google DeepMind. Эта новая команда по з...

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

Портретная гармонизация изображений Привет! В данной публикации команда RnD CV из SberDevices познакомит вас с нашим подходом к решению задачи повышения степени реалистичности портретных изображений (по-научному — портретной гармонизации изображений). Мы не только расскажем о задаче портретной гармонизации, но...

Как автоматизировать использование дизайн токенов с помощью Stylelint и PostCSS Привет, Хабр!Меня зовут Саша и вот уже 7 лет я работаю фулстек разработчиком и пишу на C# и TypeScript/React.Сегодня я хотел бы поделиться своим небольшим успехом в автоматизации. В какой-то момент я понял, что во время код ревью я указываю разработчикам на одни и те же ошиб...

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

Пишем свой QTableView с нуля Итак жил был фреймворк Qt и последние 10 лет ничего в нем не менялось. И захотел один чел написать свой QTableView с нужным ему функционалом, а именно захотелось ему выводить ячейки в несколько рядов (по горизонтали) в одной строке. Ещё ему хотелось растягивать одну из ячеек...

Анемичная модель предметной области и логика в сервисах Анемичная модель предметной области (Anemic domain model) это такая модель, где сущности содержат только свойства, а бизнес-логика находится в сервисах. Ее противоположность это богатая модель предметной области (Rich domain model), где логика находится в сущностях, а cервиc...

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

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

Проверили скорость передачи файлов в WhatsApp, Telegram и VK на Айфоне и выбрали самый быстрый сервис Иногда случаются ситуации, когда вам срочно надо поделиться каким-то файлом с другим человеком. Причем счет зачастую идет действительно на секунды, и медлить в этом деле совершенно нельзя. В настоящее время для этого лучше всего использовать мессенджеры или социальные сети....

Первый AI-калькулятор: сколько сотрудников можно заменить на AI и выгодно ли это для бизнеса? Первый AI-калькулятор: сколько сотрудников можно заменить на AI и выгодно ли это  для бизнеса?«Мы все останемся без работы» — кричат любители паники на фоне новостей об AI. И не зря. Сделали калькулятор и посчитали, что сокращения затронут практически все области и что ...

Data Scientist in Helsinki. Мое небольшое исследование про поиск работы в Финляндии в 2024 году Превью фото сделано мной зимой 2022 года в Вуосаари - зимняя природа в Финляндии очень живописнаяПривет, хабр! Под катом хотел бы обсудить тему поиска работы в период зимы 2023-2024 года it-специалистом в Финляндии. Про “исследование” я конечно сильно сказал, это скорее...

CSI — индекс удовлетворённости клиентов. Где провести и как рассчитать? Эта статья предназначена для предпринимателей, маркетологов, специалистов по клиентскому опыту, которые стремятся глубже понять своих клиентов и улучшить качество своих услуг и продуктов.Что делает эту статью особенно ценной и интересной? Здесь мы представляем не только осно...

T-Bucket Hot Rod Здравствуйте! Для начала хочу поблагодарить всех неравнодушных, оказавших помощь в решении проблемы с печатью, да, это была банальная "присоска", которую я, со своим небогатым опытом в 3D печати не смог выявить.Идейным вдохновителем этого проекта является мой друг, который о...

Установка OC Linux на плату Kintex 7 (KC705) от Xilinx с софт-процессором MicroBlaze часть 1 Данная серия статей является туториалом по установке линукса на плату KC705 с софт-процессорным ядром Микроблэйз. В первой части я описываю процесс создания схемы платформы, на которую мы поставим систему, с описанием некоторых нюансов. Во второй части я опишу процесс сборки...

Core Ultra 7 155H и Ryzen 9 8845HS сошлись в битве нового поколения, где сравнивается производительность ИИ. Тесты показали, что Ryzen быстрее В последнее время производители всё активнее сравнивают свои процессоры по производительности блоков NPU. И хотя это пока практически бесполезная для обычного пользователя вещь, авторы ресурса Computerbase решили сравнить современные CPU Intel и AMD, воспользовавшись бе...

Почему не работает Ватсап и Телеграм на Айфоне В ночь с 23 на 24 января пользователи Ватсапа и Телеграма в нашей стране обратили внимание на проблемы с доступом к двум самым популярным мессенджерам. У кого-то они запускались, но висели в статусе “Подключение”, у других не загружались новые сообщения или глючили push-уве...

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

Apple рассказала, как разрабатывает свой аналог ChatGPT для iOS 18. Что будет, если она не успеет? Прошедший 2023 год можно смело называть годом нейросетей. Складывается ощущение, что все крупные компании запустили как минимум одну собственную нейросеть. У одних она служит для генерации изображений, а у других — это текстовая модель, с которой можно выстраивать диа...

[Перевод] Как работает async/await в Swift Функция async/await в Swift появилась в iOS 15, и я полагаю, что на данный момент вы уже знаете, как ее использовать. Но задумывались ли вы когда-нибудь о том, как работает async/await изнутри? Или, может быть, почему выглядит и ведет себя именно так? Или даже почему вообще ...

Опыт создания UI библиотеки на C++ Началось все почти два года назад в декабре, практически перед новым годом.Наш основной проект (видео мессенджер) использовал WTL для Windows и GTKmm для Linux. Поддержки мака не было. Огромной неприятностью было тащить два идентичных клиента, которые, по идее, должны делать...

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

Quantization Deep Dive, или Введение в современную квантизацию Привет! Меня зовут Василий Землянов, я занимаюсь разработкой ML-инфраструктуры. Несколько лет я проработал в команде, которая делает споттер — специальную маленькую нейросетевую модельку, которая живёт в умных колонках Яндекса и ждёт от пользователя слова «Алиса». Одной из м...

Стажировка из кошмарных снов Мы публикуем очередную историю, присланную вами в наш бот обратной связи. Про то, какой не должна быть стажировка.Нашёл работу начинающим программистом в компании ООО «ЭЙТКОМ» (под брендом «Госзаказ Консалтинг Групп»).Понравилось, что офис просторный, есть настольный теннис,...

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

Видеоновости: Русский язык в Warzone Mobile, бета-тест Heroes of Might & Magic Mobile и другое Привет, читатели и зрители AppTime. На связи Никитенков Валерий, главный редактор на сайте и голос еженедельной подборки новостей за последние 7 дней. Я расскажу, почему закрыли эмулятор Yuzu и что будет дальше, как Warzone Mobile стали меньше ненавидеть в СНГ, почему War ...

Синергия продуктов Anti-DDoS и WAF Группа компаний «Гарда» – производитель семейства продуктов для защиты данных и сетевой безопасности. В нашем портфеле более 15 различных систем, которые помогают зрелым заказчикам решать задачи кибербезопасности. Под тегом #продуктыгарда мы будем размещать посты, из которых...

CADLib API: От API к прямой работе с базой данных модели через SQL-запросы Рассмотрим вариант расширения стандартного CADLib API в части выборки объектов с некоторыми параметрами из базы при помощи SQL-запросов на примере получения всех файлов публикации, в которых встречаются объекты коллизий. Подобную задачу мы решим сперва вручную при помощи тол...

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

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

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

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

Магия swizzle из шейдеров в C++ В шейдере мы можем написать vec3 v0 = v1.xxy * 2 и любую другую комбинацию x, y, z и w в зависимости от длины вектора. Я рассматриваю только размеры вектора до 4, как самые распространенные для использования. Полученный вектор может не иметь той же самой размерности, как в м...

Плавучая платформа с 10 000 укорителями Nvidia H100, которая будет отдельным суверенным государством. Проект BSFCC представила компания Del Complex Компания Del Complex разработала очень необычное решение для рынка искусственного интеллекта, которое удивляет и технически, и концептуально.  Речь о вычислительном кластере, который назвали Blue Sea Frontier Compute Cluster (BSFCC). Технически это плавучая платфо...

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

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

Сбалансированные данные – успех в ML: Oversampling и Undersampling Данные, используемые для обучения моделей машинного обучения, должны быть идеально сбалансированы по всем категориям и классам. Однако суровая жизнь часто преподносит нам данные, в которых присутствует значительный дисбаланс. Такой дисбаланс может привести к нежелательным см...

Мне плевать на твой браузер, я все равно открою ссылку в Edge! Боремся с новыми методами продвижения браузера MS Начиналось все прозаично - я приобрел новую версию Microsoft Office и решил ее переустановить с полным удалением и зачисткой всех "хвостов". Операционную систему использую Microsoft Windows 11 Pro. Установка прошла "без сучка и задоринки". Проверил что работает корпоративный...

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

Медленная сборка кода с .NET Roslyn: как найти и устранить причину .NET разработчики знают, что такое ждать сборки кода. Работать при этом невозможно: пока не увидишь, как обновится приложение, — не перейдешь к следующему шагу. А переключиться на другую задачу за это время не успеешь. Получается, если в день переписать к...

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

Практическое руководство по созданию Helm чарта или как избавиться от рутины при работе с YAML манифестами Бывало ли у вас такое, что вы совершали одни и те же действия из раза в раз и наконец-то решили избавиться от всей этой рутины? Но вы решили отложить это решение на некоторое время, в частности из-за занятости или лени. Но вот вы решаете взять себя в руки и всё изменить! Так...

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

Это как Windows, только на Linux. Представлена платформа Playtron для портативных игровых приставок Молодая компания Playtron с финансированием в 10 млн долларов представила одноимённую операционную систему, которая, возможно, станет универсальным решением для портативных игровых консолей.  Playtron опирается на Linux и в теории позволяет запускать любые лаунчер...

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

[Перевод] Оценка заявки в YC на примере CommandBar Мы успешно попали в батч S20 акселератора Y Combinator с проектом CommandBar, хотя сами в то время продолжали работать над другим стартапом под названием CodePost. Нам одинаково нравились оба проекта и мы решили пусть YC определит какой проект лучше. "Если проект попал в YC,...

Современный С++ в разработке девайсов Привет, Хабр.Меня зовут Андрей Белобров. Я тимлид одной из команд, разрабатывающих приложения для умных девайсов Сбера.На прошедшей недавно конференции Салют, OS DevConf! я выступил с докладом, в котором рассказал, как мы с командой разрабатываем приложения на С++ для умных ...

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

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

Android Work Profile: как безопасно поделить свой смартфон между домом и работой Для тех, кто работает удаленно, провести грань между решаемыми задачами и свободным временем может быть непросто. Но я сейчас буду говорить не про work-life balance, а про Android Work Profile — технологию для управления корпоративными устройствами, которая создает разгранич...

Создаем свой диалект змеиного, или DSL на Python Допустим, у нас есть некоторое исполнительное ядро и множество пользователей, владеющих Python на уровне «изучи его полностью за неделю», которые хотят решать задачи своей предметной области, с минимальными усилиями используя сервисы ядра. Мы, как разработчики ядра, хотим, с...

GitHub представила ИИ-инструмент, который будет искать уязвимости в коде Разработчики GitHub представили новую ИИ-функцию, позволяющую ускорить исправление уязвимостей во время написания кода. Пока функция представлена в публичной бета-версии и автоматически включается во всех приватных репозиториях для клиентов GitHub Advanced Security (GHAS).

Профессия: технический писатель Хотела начать текст с шутки про то, что раз инструкции никто не читает, то и писать их не обязательно. Однако 14 лет работы в IT-сфере доказывают, что это всё же довольно глупая шутка. В современных компаниях (не только в IT, но и особенно в IT!) на документации завязаны пра...

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

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

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

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

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

Android Auto теперь дважды читает каждое отправленное сообщение Платформа Android Auto и другие службы громкой связи делают вождение и взаимодействие с телефоном максимально безопасным. И эти приложения часто обновляются с новыми функциями, которые делают поездку более удобной. По крайней мере, обычно это так. Однако 9to5Google сооб...

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

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

Какой дизайн получит iPhone 16 и чем он будет отличаться от iPhone 15 Вместе с iPhone 16 Pro и iPhone 16 Pro Max Apple покажет нам еще два смартфона: iPhone 16 и iPhone 16 Plus. Эти аппараты идеально подойдут для тех, кто не готов тратить большую сумму на “прошки” или просто не видит смысла выкладывать за смартфон такие деньги. Вот только пос...

Хеш-функция Стрибог. Особенности аппаратной реализации на System Verilog На просторах интернета есть несколько статей об алгоритме получения хеш-функции Стрибог (ГОСТ 34.11-2012), в том числе и на Хабре. Однако везде в качестве примера приводится реализация на языках программирования C, C#, Python и других. То есть идет последовательное выполнен...

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

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

AstraLinux для приборостроения Ни для кого не секрет, что в марте 2022 года был подписан приказ, согласно которому для безопасности и технологической независимости требуется перейти на отечественное ПО, в частности операционные системы. Мне стало интересно, если я переведу домашний ПК на AstraLinux, смогу...

Сказ о том, как я за год решил более 600 leetcode задач Всем салют!Хочу рассказать вам историю о том, как я начинал с уровня — «не могу решить даже 1 easy задачу из 10» до уровня — «могу решить каждую вторую medium задачу» и прошел несколько coding сессий в таких компаниях как Meta, Bo...

Мапперы на Famicom, NES, Денди: откуда взялись и зачем нужны (часть 1/2) Примерно раз в десятилетие на русскоязычных около-компьютерных ресурсах кто-нибудь поднимает тему такого элемента архитектуры 8-битной Денди и её прародителей, как «маппер», пытаясь на пальцах объяснить, что же это такое. И каждый раз у меня возникает ощущение, что рассказч...

Как работает кнопка Mute на Яндекс Станции. Подробный разбор логики и схем Привет! На связи Геннадий «Крэйл» Круглов из команды, которая разрабатывает аппаратную часть Яндекс Станций. С кем-то из читателей Хабра мы уже могли познакомиться в рамках мероприятий Я.Железа, где делимся опытом разработки устройств.  Последние несколько лет мы с...

Domain fronting для чайников, и как его использовать для обхода блокировок Давайте сразу вопрос на засыпку: может ли быть так, что клиент подключается, ну, например, к серверу www.python.org (самому настоящему, тому, к которому обращаются еще миллионы клиентов со всего мира), а потом использует его как прокси и гоняет через это подключение трафик д...

Сыграть в DOOM, Epic Pinball, Warcraft и другие DOS игры можно на любом iPhone, iPad и Mac. Попробуй и ты Для многих из нас геймерский путь начинался с простых пиксельных игр, в которые мы играли на старых компьютерах. Помню, как я регулярно просиживал в DOOM и DOOM 2, хоть и прошел эти игры по несколько раз. Теперь же появилась возможность окунуться в детство и сыграть за люби...

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

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

C3D Collision Detection: представление детектора столкновений в составе C3D Toolkit Сергей Белёв, старший математик‑программист, C3D Labs, знакомит с новым компонентом C3D Toolkit — модулем C3D Collision Detection, рассказывает о том, что детектор столкновений представляет собой изнутри, и о том, какие возможности он предоставляет п...

7 причин моей гибкости. Как работают принципы ITIL Привет, меня зовут Кирилл, в СИГМЕ я работаю в департаменте решений SAP. И речь сегодня пойдет о 7 руководящих принципах ITIL, которые я хочу раскрыть на собственных примерах. Эти принципы не новы, но, как бывает с классикой, — к ней хочется возвращаться. Тем более что обозн...

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

Чтобы никакие личные фотографии не достались сотруднику сервисного центра. Google работает над режимом Repair Mode для Android Компания Google работает над режимом Repair Mode для операционной системы Android. Указания на этот режим обнаружились в репозитории AOSP.  создано DALL-E Речь о режиме, который пригодится любому пользователю, если придётся сдавать смартфон в сервисный центр. Это ...

Запускаем локальный ML-процесс в облаке с помощью DataSphere Jobs В сообществе ML-инженеров и дата-сайентистов популярны инструменты с быстрой обратной связью наподобие JupyterLab — они помогают легко и без лишних обвязок проверять гипотезы или создавать прототипы. Но довольно часто бывает, что при разработке ML-пайплайна, будь то инференс...

В Китае появился самый быстрый интернет — за секунду можно скачать 150 фильмов В ноябре 2023 года в Китае заработал интернет с рекордной скоростью По данным Speedtest за октябрь 2023 года самый быстрый интернет в мире доступен в Арабских Эмиратах — скорость загрузки данных там достигает 269 мегабит в секунду. Если учесть, что пару десятков лет назад дл...

Настройка NVMe over TCP — для тех, кому надо подключить больше 1 диска единственной конфигурации из всех примеров в Сети Технология NVMe через различные фабрики (далее NVMeOF) оформлена в качестве стандарта летом 2016 года, она была встроена в пятую ветку ядра Linux.Поэтому, когда было решено мигрировать объемные базы данных с легаси-решений на общедоступные платформы, возник вопрос — можно ли...

Зеркалирование топиков Kafka по-бруклински Буквально на секунду представьте, что у вас есть парочка здоровенных кластеров Apache Kafka, каждый из которых держит по нескольку миллионов rps. И тут вас попросили зеркалировать топик из одного кластера в другой. Максимально близко к реалтайму, да ещё и с некоторыми специф...

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

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

Задача на 15 минут. Как она может вылиться в год разработки Привет всякому входящему! Сегодня хочу рассказать о том, как сложно спрогнозировать вроде бы простые задачи, на которые по словам «экспертов с интернета» уходит пару дней. Я поделюсь примерами из жизни, когда клиент просит сделать быстренько на коленке, а ты погрязаешь в рут...

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

[Перевод] Нас не учили писать качественное ПО ВведениеВы когда-нибудь участвовали в проекте разработки ПО, в котором отсутствовали жизненно необходимые меры по обеспечению качества? Вы в этом не одиноки. Такое случается в потрясающе огромном проценте компаний и проектов. Даже если компании знают о существовании такого п...

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

ГБОУ «Воробьевы горы» получил статус «Центр сертификации ЗАО «Топ Системы» Московский образовательный комплекс «Воробьевы горы» и компания «Топ Системы» расширяют сотрудничество в рамках программы «Факультет САПР».На базе Московского дворца пионеров организован «Центр сертификации ЗАО «Топ Системы». Задача Центра – осуществлять оценку уровня владен...

Генерация зависимостей внутри программы В программировании программы часто строятся иерархично. Один программный компонент вызывает функции из другого программного компонента. Как бы представить эту взаимосвязь в законченной программе? Эту задачу можно решить прибегнув к языку Graphviz и утилитам cpp, dot, make, c...

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

Как платить Айфоном по NFC через СБПэй и получать кэшбек 10% в магазинах Наверное, уже не осталось тех, кто не знает, что Apple Pay в России не работает. Несмотря на то что в Купертино официально его не отключали, работу сервиса пришлось прекратить из-за санкций, наложенных на ЦБ РФ, которому принадлежит Национальная система платежных карт (НСПК...

Как запускать игры с SEGA на iPhone без эмуляторов и App Store На прошлой неделе Apple немного упростила правила магазина приложений App Store и позволила размещать в нем эмуляторы игровых приставок. Раньше такие приложения в него не допускались, а значит, владельцам смартфонов компании из Купертино приходилось пользоваться обходными п...

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

[Перевод] Это слишком опасно для C++ Некоторые паттерны стало возможно использовать на практике только благодаря безопасности Rust по памяти, а на C++ они слишком опасны. В статье приведён один такой пример.Работая над внутренней библиотекой, написанной на Rust, я создал тип ошибок для парсера, у которых должна...

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

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

Проходит предзаказ игры Solar Knight от Crescent Moon Games с графикой в стиле Game Boy Color Издатель Crescent Moon Games анонсировал новую мобильную игру — Solar Knight. Впервые инди-разработчик vini рассказал о ней в 2020 году на отдельном форуме; тогда он ещё собирал людей на ЗБТ. Теперь же для игры проходит предрегистрация в App Store. Это будет премиальный прое...

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

[Перевод] Эффект Монреаля: почему языкам программирования нужен Царь стилей Давайте представим нереалистичный сценарий, где вы выбираете язык программирования для проекта, который в перспективе станет очень большим. Допустим, это будет набор сервисов в монорепозитории, над которыми работает более 100 человек. Чтобы сделать этот сценарий ещё менее р...

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

Вышла macOS Sonoma для всех желающих. Что в ней нового и стоит ли обновляться самым первым На WWDC 2023 Apple показала новую версию операционной системы для своих компьютеров — macOS Sonoma. Сразу после этого началось бета-тестирование, и вот оно благополучно подошло к концу. Сегодня macOS Sonoma стала доступна для установки всем желающим. Новая операционка...

[Перевод] Кодируем крестики-нолики в 15 битах Недавно я наткнулся на пост Алехандры Гонсалес (@blyxyas), в которой рассказывается о попытке сжать игру крестики-нолики в минимальное количество битов. Она пришла к решению из 18 битов. Это заставило меня задуматься: а можно ли улучшить этот результат?Как говорит Алеха...

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

Шпаргалка по безопасной сборке Docker-образов Каждый контейнер Docker основан на образе, который обеспечивает базу для всего, что вы когда-либо будете развертывать и запускать. Если злоумышленник как-то повлияет на сборку образа и изменит Dockerfile, то сможет совершить навредить вашим системам. Например, добавить вред...

Протектор и LLVM-обфускатор. Сравнение двух подходов к решению задачи запутывания кода Добрый день, Хабр! В данной заметке я постараюсь сравнить два разных подхода к задаче запутывания машинного кода – это протектор и обфускатор, построенный на базе LLVM-фреймворка. Нам пришлось с этим столкнуться, когда возникла задача защиты библиотек Guardant под разны...

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

Пишем свой вариантный тип C++ 17 привнес в язык достаточно много нововведений, в том числе шаблон std::variant (хоть в Boost он есть уже довольно давно). Фактически, последним вышедшим и полноценно реализованным стандартом C++ на тот момент, как я начал изучать данный язык, являлся как раз C++17, поэ...

Один в поле разработчик: примеры российских видеоигр, которые создавал один человек Может ли интересную игру создать один человек? Когда-то Пажитнов сделал Тетрис, а одним из развлечений программистов было создание или портирование игр с одной платформы на другую. Есть зарубежные игры, созданные в одиночку и заработавшие миллионы – о них на Хабре уже п...

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

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

Практический пример использования модели детекции изображений Всем доброго дня. Совсем недавно я закончила продвинутый курс от Deep Lerning. Курс объемный, много свежей информации. Мне, как закончившей прикладную математику и часто по работе соприкасающейся с искусственным интеллектом (нейросетки, генетика, fuzzy logics) было не сильно...

В Amazon Music появится генеративный плейлист Maestro для «умной» подборки музыки Сервис Amazon Music запустил генеративный плейлист, как у Spotify. Генеративный плейлист Amazon называется Maestro и может подобрать практически любую музыку по различным запросам. Maestro может подбирать музыку, когда пользователь использует подсказки на естественном языке ...

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

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

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

Глава Роскосмоса: в очередной раз будем наступать на грабли — «Ангару» запустим сейчас, а документы будут готовы позже В рамках марафона «Знание.Первые» на Всемирном фестивале молодежи глава «Роскосмоса» Юрий Борисов рассказал, что стартовая инфраструктура для ракет «Ангара» на космодроме Восточный практически готова к первому пуску. Однако, у строите...

Запускаем Matlab внутри Docker-контейнера с поддержкой GUI в ОС GNU/Linuxх Возникла задача запускать графические приложения в полностью изолированной среде: как от Интернета, так и от файловой системы «хозяйской» ОС. В моём случае это был Matlab. Пишут, что в последних версиях он стал шибко «умным»: сам без спроса постоянно лезет в сеть и чем-то та...

Алгоритм MiniMax. Использование минимакса в Unity на примере игры Поймай Овечку Минимакс - популярный алгоритм для принятия решений в играх с нулевой суммой (один выиграл - другой проиграл). Казалось бы, раз он так популярен, то всё что можно было про него сказать уже сказано? Не совсем. Информация сильно раздроблена, иногда ошибочна, а найти какие-либо...

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

[recovery mode] Кейс АТОМ: Как не потерять гибкость при проектировании электромобиля Привет! Это Дмитрий Гайдук, менеджер в АТОМе по корпоративным и онлайн-сервисам. Каждое инженерное и программное решение в АТОМе – это отдельный продукт. Но если вырывать эти продукты из контекста, они останутся отдельными разрозненными решениями. Для нас крайне важно измени...

Можно ли пользоваться Android-смартфоном без аккаунта Google Работа подавляющего большинства Android-смартфонов завязана на сервисах Google, доступ к которым открывается только при наличии аккаунта. Это серьезное ограничение, буквально заставляющее нас регистрировать учетную запись в экосистеме, нужной далеко не каждому. А что, если ...

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

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

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

Зачем Android-смартфонам нужны сервисы Google Play: скрытые фишки, о которых вы не думали На прошлой неделе я написал большой материал, в котором я объясняю, почему смартфоны Huawei — это лучшее из того, что есть на рынке мобильных устройств прямо сейчас. Разуверить меня в этом не смог ни автор AndroidInsider.ru Герман Вологжанин, раскритиковавший аппараты...

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

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