Социальные сети Рунета
Вторник, 14 мая 2024

“Авгиевы конюшни” отдела суппорта. Как мы накопили 1500 тикетов за 4 года и решили их все за 5 месяцев Всем привет! Мы - отдел бизнес-поддержки (БП) в Social Discovery Group. В этой статье расскажем, как мы повторили шестой подвиг Геракла, очистив доску от 1500 тикетов, которые накопились за 4 года. 1500 задач - это больно. Тикеты кочевали из спринта в спринт, заказчики ежедн...

Комьюнити дизайнеров в продукте Всем привет!Меня зовут Макс Брызгалов. Я лид команды UX в такси Максим. Автор базы полезных материалов и куратор комьюнити “Дизайн Ресурсы”.В начале 2022 возобновил карьерные консультации для дизайнеров и запустил активности в комьюнити. Смотры портфолио, дискуссионные клубы...

Распределённая трассировка с помощью Jaeger Частая проблема при разработке распределённых систем состоит в следующем. Предположим, вы отправили системе запрос, и этот запрос обрабатывается очень долго. При этом внутри системы он распадается на запросы к нескольким внутренним микросервисам, которые могут превратиться в...

Busrpc — фреймворк для разработки микросервисов В этой статье я расскажу о собственном проекте ориентированном на микросервисную архитектуру. Этот проект вырос из идей и подходов, которые я применял на протяжении нескольких лет работы связанных с переводом крупного монолитного проекта на микросервисную архитектуру. Я не б...

[Перевод] О важности владения кодом Наткнулся на данную статью случайно, когда находился в очередном поиске ответа на вопрос "Как же так?!" в интернете. Автор данной статьи занимается мобильной разработкой, но тем не менее его наблюдения и выводы касательно владения кодом разительно перекликаются с моими:Однаж...

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

Использование шейдеров во Flutter. Часть 1 Привет! На связи Юрий Петров, Flutter Team Lead в Friflex. Мы разрабатываем кроссплатформенные мобильные приложения для бизнеса и специализируемся на Flutter. В этой серии статей я поделюсь опытом, как с помощью шейдеров на фреймворке разра...

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

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

Prostore — простой Event sourcing + CQRS фреймворк На данный момент на рынке мало Event sourcing + CQRS фреймворков. А те, что есть, непопулярны и имеют слабую поддержку, поэтому многие создают свои in-house решения. В этой статье расскажу о выполненном командой «Programming Store» проекте Prostore, который может послужить ...

[Перевод] Стратегии роста Notion. Часть 2 Примечание Wunder Fund: мы very early adopters Ноушена и большие его фанаты. Поэтому решили перевести нетипичную для нас статью о том, как он создавался, как рос, как развивалась его стратегия. В статье есть ряд интересных мыслей про развитие продуктов.Сегодня публикуем втор...

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

[Перевод] Столетний язык программирования — какой он Особо амбициозные разработчики любят заявлять о том, что используемый ими язык программирования или фреймворк будет жить лет сто. Дерзкое заявление, учитывая, что разработке программного обеспечения, как таковой, всего около 65 лет. А фреймворки еще моложе. И всё же инт...

[recovery mode] Тестирование gRPC. Часть 2 В предыдущей статье мы с вами рассмотрели тестирование фреймворка gRPC. Но демо проект созданный моим коллегой Михаилом Петровым, был улучшен моим в другим коллегой Читать далее

Принципы SOLID на JS, теперь точно простым языком, но не очень коротко SOLID — универсальный набор принципов разработки поддерживаемого программного обеспечения. В данной статье я попытался разъяснить свое понимание принципов SOLID в отношении языка JavaScript: особенности реализации, некоторые синтаксические конструкции и, конечно, примеры из ...

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

Jenkins Dynamic Agents в K8s Привет Хабр! На связи Рустем, IBM Senior DevOps Engineer & Integration Architect. В этой статье я хотел бы поделиться своим недавним подходом к динамической подготовке агента Jenkins с помощью простых строк кода в пайплайне Jenkins с использованием метода общей библиотек...

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

Доступный AutoML: как оптимизировать работу с ML-моделями с помощью VK Cloud и FEDOT В машинном обучении (Machine Learning, ML), чтобы обеспечить требуемые показатели метрик качества ML-моделей зачастую надо строить многокомпонентные пайплайны и комбинировать десятки алгоритмов моделирования. Нередко это сложно и долго. В таких ситуациях на помощь приходит...

Яндекс выпускает Yatagan — опенсорс-фреймворк для внедрения зависимостей, позволяющий ускорить сборку Меня зовут Фёдор Игнаткевич, я делаю приложение Яндекс и мобильный Яндекс Браузер для Android. Примерно год назад я предложил команде идею фреймворка для внедрения зависимостей, который более чем вдвое ускорил сборку обоих проектов и который мы сегодня выложили на Гитхаб —...

[Перевод] Стратегии роста Notion. Часть 1 Примечание Wunder Fund: мы very early adopters Ноушена и большие его фанаты. Поэтому решили перевести нетипичную для нас статью о том, как он создавался, как рос, как развивалась его стратегия. В статье есть ряд интересных мыслей про развитие продуктов.Что можно узнать о стр...

[Перевод] Как фронтендеру стать мобильным разработчиком, или Перевод API React в Jetpack Compose Привет, я Данильян, работаю в Самокате фронтенд-разработчиком, разрабатываю бэкофисное приложение с использованием React. Когда я только начинал изучать Jetpack Сompose, я наткнулся на статью, в которой простым языком для людей, пришедших из мира веб-технологий в мир мобильн...

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

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

Как устроены интернет-платежи в Dodо Одно из направлений разработки в Dodo — интернет-платежи. Для компании это скорее утилити-функция, чем основной бизнес, но всё же нам приходится делать кучу всего, чтобы дать клиентам лучший UX и у нас накопился опыт, которым хочется поделиться.Меня зовут Дмитрий Кочнев, я р...

Прокачиваем логирование: как отслеживать бизнес-процессы в Kibana Всем привет! Меня зовут Дима Зотов, я специалист техподдержки. Работаю в Почтатехе на проекте Почта.ID. Мы обеспечиваем регистрацию и вход в сервисы Почты России, а также отвечаем за хранение учетных записей. Еще разрабатываем решения для некоторых почтовых услуг. Например, ...

Как заработать на Bug Bounty Меня зовут Алексей Гришин, я руководитель направления Bug Bounty VK. За 9 лет участия в программе по поиску уязвимостей на различных платформах мы накопили огромный опыт получения, проверки и оплаты самых разношерстных отчетов, поэтому в этой статье я хочу поделиться советам...

[Перевод] Запросы к MongoDB из Java с помощью билдера фильтров В этой статье разберемся, как использовать класс Filters для запросов к MongoDB.Класс Filters представляет собой билдер для удобного написания фильтров запросов. Фильтры — это некоторые условные операции, которые MongoDB использует для ограничения результатов. Читать далее

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

ESP32 отладка с помощью JLINK Здравствуйте друзья, я хочу поделиться с вами своим опытом в отладке ESP32 с помощью отладчиков, реализующих интерфейс JTAG. Данная задача кажется тривиальной (она такая и есть), при мысли об программировании микроконтроллеров. Но при старте работы с микроконтроллерами ESP32...

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

[Перевод] Как мы в Slack используем Terraform В Slack всей своей инфраструктурой, опирающейся на AWS, DigitalOcean, NS1 и GCP, мы управляем с помощью Terraform. И хотя большая её часть работает на AWS, мы выбрали Terraform в противоположность их нативному сервису CloudFormation, чтобы использовать единый инструмент сре...

Документ бизнес-требований: Что это такое и как его составить [+5 шаблонов] Документ бизнес-требований (BRD) является отправной точкой для любого программного проекта или бизнес-решения. Благодаря такому документу члены команды приходят к единому мнению о том, что нужно создать, зачем это делать и как этого добиться.В этой статье изучаются основные ...

Магия размерностей и магия Котлина. Часть вторая: Продвинутые возможности  KotUniL Это вторая статья из серии статей про магии размерностий и Котлина на примере библиотеки KotUniL.В первой статье мы рассмотрели, как с помощью этой библиотеки не разбивать космические аппараты :-). В этой статье мы рассмотрим менее очевидные, но не менее интересные фичи...

Установка OpenCV под Windows В данной статье будет описан способ сборки OpenCV из исходников с помощью cmake и Microsoft Visual Studio, и пример запуска своего проекта на cmake. Большая часть статьи является повторением официальной документации. Читать далее

Как настроить простой DNS-сервер для локальной сети Если вы впервые столкнулись с необходимостью поднять DNS-сервер для локальной сети под Linux, то эта статья – для вас. Преимущество предлагаемого способа – простота: сервер можно настроить буквально за несколько минут. Но этот способ, скорее всего, не подойдёт для продакшн с...

Как создать сервис по ремонту оргтехники В этой статье расскажу о том, как мы создавали сервисный отдел по ремонту оргтехники. Читать далее

Обновление Hibernate через боль Меня зовут Андрей Аркаев. Я занимаюсь разработкой на Java с 2002 года. Сейчас развиваю бизнес-систему для контактных центров в Naumen. Как и многие другие бизнес-системы мы используем ORM. В статье поговорим о Hibernate, так как эта библиотека распространена для Java.Наш про...

Разница между debounceTime и throttleTime В этой статье я хочу рассказать тонкую разницу между операторами debounceTime и throttleTime простыми словами Читать далее

C++ для Maya Создание кастомного локатора в Autodesk Maya с помощью C++Здравствуйте. В этой статье я хочу поделиться тем опытом, который приобрел при написании плагина на C++ для Maya. Читать далее

[Перевод] Создайте конвейер потоковой обработки событий в реальном времени с помощью Kafka, BigQuery & Looker Studio Создание простого проекта потоковой обработки событий – не самая простая задача. В сегодняшней статье мы расскажем, как можно достаточно просто сделать это при помощи Kafka, BigQuery & Looker Studio. Приложения для потоковой обработки в реальном времени иногда могут бы...

Unity «уменьшение размера файла на устройстве» Часть 1 Когда игра подходит к релизу, ее объем занимаемой памяти сильно превышает желаемый. Если говорить с точки зрения пользователя, то они тоже не любят, когда приложение весит очень много. Это может отпугнуть как при первом скачивании, так и при очистке телефона, когда нужно буд...

Как интегрировать Яндекс Карты в приложение на Flutter Hey! Меня зовут Дмитрий Лёвочкин, я Futter разработчик в Friflex и автор блога Дневник Flutter разработчика. Мы в Friflex занимаемся разработкой мобильных приложений, и одна из наших ключевых отраслей – ритейл. Сложно представить мобильное приложение крупного ритейлера без к...

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

Конструктор базы для браузерной стратегии в духе Dune 2/2000 на Three.js, Vue3 + TS Самой успешной моей статьей для сообщества был подробный отчет о разработке браузерного FPS. Судя по статистике в базе данных — неожиданно огромное количество людей зашло и попробовало сыграть, я получал заинтересованные вопросы в личку и так далее. В дальнейшем я сделал еще...

С чего айтишнику можно начать 2023 год? Отдохните после 2022 года! На этом можно завершить статью.Но если вы из тех людей, кому хочется заняться чем-то и в праздники, то эта статья для вас. В статье я написал, чем бы сам хотел заняться до выхода к рабочей рутине.Пишите в комментариях, что вы уже успел поделать без...

[recovery mode] Kotlin/Golang работа в двух языках Так уж получилось, что у нас в компании используются разные стеки и языки. И в частности у нас есть большое подразделение, основным стеком которого является JVM с Kotlin в качестве языка разработки (вместо ванильной Java, на бэкенде). Но при этом этому же отделу регулярно пр...

[Перевод] Работа с SQL Server в C# с помощью скриптинга. Часть 2 В этой статье я покажу вам, как работать с Microsoft SQL Server в C# проектах посредством скриптинга. Реализовать это можно как в Windows, так и в macOS. Поскольку Windows, очевидно, является намного более популярной целевой платформой для C# и SQL Server, больше внимания я ...

[Перевод] The Best Golang framework: no framework? Вольный перевод статьи на ресурсе threedots.tech от Robert Laszczak - главного инженера в SlashID, сооснователя Three Dots Labs и создателя популярной Golang-библиотеки Watermill.На протяжении некоторого времени я занимался руководством группы Go-разработчиков и одним из са...

[recovery mode] Интеграция Primefaces в приложение на Spring Boot. Часть 1 — настройка зависимостей и базовый проект В данной статье описывается пример интеграции библиотеки компонентов пользовательского интерфейса Primefaces, построенной на основе фреймворка JavaServer Faces (JSF), в MVC приложение на Spring Boot. Читать далее

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

Вторая жизнь tello dji В статье предлагается взглянуть на дополнительные возможности, которые предоставляет квадрокоптер tello dji. Благодаря наличию открытого api и паяльника возможно немного расширить применение аппарата, подружить его с ROS(robot operation system), а также по-новому взглянуть...

Интеграция Primefaces в приложение на Spring Boot. Часть 2 — Готовим контекстное меню для главной страницы В этой статье описывается пример интеграции библиотеки компонентов пользовательского интерфейса Primefaces, построенной на основе фреймворка JavaServer Faces (JSF), в MVC приложение на Spring Boot.Первая часть Читать далее

Программирование EEPROM 93C76. Пишем программатор. Часть 1 Всем привет! Я - Kekovsky, инженер-любитель, до этого публиковался на некоторых других платформах. Решил попробовать себя здесь, если статья понравится, будет продолжение. В этой статье мы изучим работу с микросхемой EEPROM 93C76, рассмотрим обращение к ней по шине SPI, напи...

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

Популяризация JSON-RPC (часть 2) Продолжим строить подобие JSON-RPC сервера, начатого в части 1 и анализировать его плюсы и минусы. В прошлой статье был описан механизм отделения бизнес логики бэкенда от транспортного протокола (HTTP) через шаблон проектирования "Front Controller", роль которого исполняет в...

DSL фреймворк для создания Telegram ботов Родилась у меня идея! Я хочу создать фреймворк, который позволит пользователям писать своих ботов Telegram с помощью языка, специфичного для конкретной области (DSL), или визуального представления, например, диаграммы UML. На основе предоставленных данных фреймворк будет ге...

ChatGPT: новый инструмент в борьбе с багами. Как можно использовать AI для повышения качества тестирования Всем привет! Я QA Engineer и недавно открыл для себя ChatGPT и хочу открыть этот мир другим тестировщикам. Эта статья не руководство к применению и каких-то суперлайфхаков здесь не будет. Цель этой статьи в том, чтобы показать огромные возможности нейросетей в помощи нам, те...

Перенос URLSessionTask в background URLSession при уходе приложения в фон Всем привет. Всем привет. Меня зовут Максим Батраков и я iOS-разработчик в 65apps. В этой статье я хочу рассказать о некоторых особенностях работы с URLSession, разобрать загрузку файлов в background URLSession и показать процесс переноса выполнения активных запросов в backg...

Экстремально уменьшаем размер NPM пакета Однажды я захотел создать небольшую NPM библиотеку по всем “best practices” - с покрытием тестами, написанием документации, ведением нормального версионирования и changelog'а и т.п. Даже написал пару статей, которые в деталях описали, какие вопросы решает библ...

Github Actions. Простой пример для уверенного знакомства Здесь я буду расссказывать о моем опыте настройки CI/CD c помощью GitHub Actions.Эта статья поможет тем, кто хочет настроить автоматический деплой для личного/учебного проекта на свой удаленный сервер, пользуясь бесплатным сервисов GitHub Actions. Причем этим сервисом можно ...

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

Как мы применяли исследования при разработке сервиса Европротокол онлайн В прошлом году мы с командой мобильного приложения «Госуслуги Авто» выпустили новый сервис — оформление ДТП без участия инспектора ГИБДД. В этой статье я расскажу, как мы разрабатывали сервис, какие грабли собрали, чему научились и каких результатов достигли. Читать далее

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

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

Превращаем DSLogic U2Basic (PANGO) в DSLogic Plus В данной статье расскажу как модифицировать DSLogic U2Basic (PANGO) в DSLogic Plus.Данная статья является обновлением статей - Превращаем DSLogic Basic в DSLogic Plus и Превращаем DSLogic U2Basic в DSLogic Plus Читать далее

Создаем простую игру с Jetpack Compose для часов на Google WearOS Библиотека Jetpack Compose значительно изменила подход к разработке нативных приложений и позволила декларативно описывать в коде интерфейсы, которые зависят от состояния и автоматически отслеживают его изменение. Но долгое время ее применимость ограничивалась платформой And...

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

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

Код на репите. Механизмы повторного использования кода: от элитного до простого Привет! Меня зовут Грант, я .Net-разработчик. Знаете вы это или нет, но ваш код можно переиспользовать: будь то модуль, компонент или архитектура. Одни разработчики делают это осознанно, другие на уровне рефлексов. Повторное использование хорошего кода экономит время и други...

19,6 млн рублей за 2022 год. Парсинг сайтов. 25 советов желающим заняться Меня зовут Максим Кульгин, моя компания xmldatafeed занимается парсингом сайтов в России порядка четырёх лет. По итогам прошедшего 2022 года поделюсь советами для тех, кто думает о подобном бизнесе. Бизнес очень интересный, но наполнен нюансами, которые и расскажу ...

Приглашаем на Ozon Tech Community Mobile Meetup Мы делаем приложения для всех — для покупателей, продавцов, курьеров и сотрудников пунктов выдачи заказов. И каждое чем-то уникально.Всем привет, я Сергей, и я руковожу отделом разработки мобильных приложений для пунктов выдачи заказов Ozon.Работа в IT для меня – челлендж, б...

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

Как написать UI-автотесты, если не умеешь программировать? О чем эта статья и чем она полезна.Всем привет! В этой статье пойдет речь о том, как написать простые UI-тесты на языке Java. Это будет интересно тем, кто давно хотел попробовать себя в автоматизации или добавить новенького в свой текущий проект. В этой статье не будет больш...

Как стать джуном, которого берут на работу (frontend-разработка) Привет, Хабр! Я - начальник отдела разработки небольшой IT-компании, и мы - те самые люди, которые не ищут на работу сеньоров, и мы готовы брать не только мидлов, но даже и джуниоров, и готовы растить их до уровня крепких мидлов. Однако 80% приходящих на вакансию frontend-ра...

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

Тестирование PHP проектов на примере Symfony Хочу описать свои наработки и устоявшиеся подходы к тестированию PHP проектов. Последние годы я работаю с Symfony и здесь будет достаточно моментов специфичных для этого фреймворка. Так же в этой статье термин функциональные тесты (functional) является синонимом End-to-End т...

[Перевод] Интуитивно понятное управление: как помочь пользователям разобраться в принципах работы приложения Hola, Amigos!На связи Саша Чаплыгин, Flutter-dev. На проектах я нередко взаимодействую с дизайнерами, арт- и креативными директорами, поэтому решил почитать для себя статьи о том, как строиться дизайн мобильных приложений. Что нужно учитывать в разработке дизайна, чтобы поль...

[Перевод] Немного о Fastify Почти 15 лет назад Райан Томайко (Ryan Tomayko) написал книгу "The Thing About Git" (Про Git). Это было время, когда SVN (Subversion - система управления версиями) все еще активно использовался. Мало кто понимал, почему Git такой особенный, и тогда я тоже не принадлежал к их...

Разработка игр на Kotlin Native. Часть 1 Возможность компиляции Kotlin в нативный код, который может использовать С-библиотеки позволяет разрабатывать мультимедийные приложения и игры на основе библиотек SDL, GTK/OpenGL, GDX и специализированных библиотек для Kotlin (например, KorGE). В этой статье мы последователь...

Проблема N+1 и как её решить с помощью EntityGraph Всем привет! В данной статье попробуем разобраться с проблемой N+1 (или может правильнее 1+N?) и как ее решить с помощью использования EntityGraph.Проблема N+1 возникает, когда мы генерируем запрос на получение одной сущности из базы данных, но у данной сущности есть свои св...

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

[Перевод] Автоматизация с Ansible Мы можем реализовать систему, которая будет выполнять за нас повторяющиеся и легко воспроизводимые задачи. Автоматизируйте рутину, чтобы освободить время для работы, которая приносит бизнесу реальную ценность — и с которой машинам не справиться. А ещё благодаря автомати...

Зачем Clojure Flutter ”Если вам нравятся Руби, Свифт, Дарт, Эликсир, Эльм, С++, Питон или даже С, используйте их ради бога. Но выучите Кложур, и выучите его хорошо” — Дядя Боб (твит, а также твиты: 1, 2, 3).Статей о Clojure написано много, цель этой — дать свое видение некоторых преимуществ языка...

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

[Перевод] Genie Builder v0.2: ускорьте разработку вашего приложения на Julia В этой статье представлен перевод руководства: "How to quickly turn your Julia code into a web app with Genie Builder". В статье пойдет речь о новом инструменте быстрой разработки web-приложений на основе Ginie Framework - платформы для интернет приложений на языке Julia. ...

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

Вжух и собралось или как я ускорял сборку UI на базе kubernetes + jenkins и yarn + nx С распространением практики доставки непрерывных обновлений время сборки приложений стало критически важным параметром как для разработчиков, так и для бизнеса компании в целом. В данной статье описан мой опыт ускорения Frontend пайплайна Jenkins в Kubernetes на базе yarn и ...

Active Directory для изучения Pentest Это первая статья цикла, который будет описывать методы исследования структур системы Windows и Active Directory. В статье попробуем изучить мини инфраструктуру AD и попытаемся понять как обнаруживаются логические уязвимости.В сети достаточно много статей о том, что была най...

Как получить доступ к chatGPT в России Всем привет! Перед началом статьи сразу скажу:САМЫЙ ВАЖНЫЙ ДИСКЛЕЙМЕР: естественно, покупая смс на чужой номер вы полностью компрометируете безопасность своего аккаунта. Мало ли кто его потом еще купит для получения доступа. Поэтому, помните, что представленный в данной стат...

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

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

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

Брокер сообщений NATS: как мы решали проблему скоростной и стабильной доставки сообщений Всем привет. Меня зовут Женя, я работаю, как это сейчас модно говорить, DevOps-инженером в компании Garage Eight. В этой статье я бы хотел поделится опытом внедрения и эксплуатации брокера сообщений NATS в нашей инфраструктуре — настолько понравилась эта технология.&nbs...

Бизнес по созданию приложений: пять мифов и как их решить Разработка мобильных приложений В 2021 году по всему миру было загружено около 140 миллиардов приложений. (2019: 120 миллиардов загрузок). В 2021 году глобальный доход от приложений вырос на 20% и составил $135 млрд. Читать полную статью

[Перевод] Почему стоит использовать лимиты CPU в Kubernetes Эту статью я написал в противовес статье “For the love of god, stop using CPU limits on Kubernetes” (Ради всего святого, прекратите использовать в Kubernetes лимиты CPU). Мне та статья понравилась, и я считаю её хорошим чтивом. Более того, я согласен с высказанными в ней р...

Делаем минимальную отладочную плату на STM32G030F6P6 и шьем в Arduino IDE У меня в разработке оказалось несколько устройств, в составе которых кроме прочего планируется использовать F030F6P6. Они маленькие и достаточно производительные. Для мониторинга вполне достаточно. Программист я так себе, занимаюсь в основном железом. Но экстренно пощупать н...

Как Сбер стал игровые хакатоны проводить: удовольствие, нетворкинг и поиск новых специалистов Привет, Хабр! Меня зовут Алия Мусаева, в Сбере я лид чаптера Production, ДИТ блока «Сервисы и безопасность». Сегодня расскажу о том, как инициатива, которая началась как пет-проект, переросла в официальный проект Сбера и вышла на общекорпоративный уровень. Думаю, что статья ...

Создание персонажа для тестирования и работы с VR без шлема Эта статья может быть полезна тем кто хочет попробовать создать механики для VR но у него еще нет шлема, или если у вас уже раскалывается голова от постоянного тестирования вашего продукта.Именно такая проблема и побудила меня задуматься в этом направленииДля того чтобы не у...

Магия оптимизации SQL запросов Даже самый простой SQL запрос можно выполнить по-разному. Но из всех вариантов СУБД нужно выбрать оптимальный, как же это сделать? Неужели придётся перебрать все возможные варианты? Давайте разбираться. Читать далее

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

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

Одна платформа, чтобы править всеми Привет! Меня зовут Миша, я работаю в Ozon Tech — руковожу направлением базовых сервисов в платформе. Ozon сегодня — это порядка 4000 разработчиков и более 3500 сервисов. Разработка постоянно развивается, количество сервисов увеличивается, и одна из сложных задач — ...

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

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

Генерация 2D мира с помощью клеточного автомата на Python Всем привет! На написание этой статьи меня вдохновил автор YouTube канала PeaAshMeter. В своем видео автор показывает простейший генератор 2D мира, который основан на простейшем правиле клеточного автомата. Что такое клеточный автомат? Какие клеточные автоматы бывают? На эти...

Пишем простого бота-администратора для Telegram на Python. Тестируем на жене Создание своего собственного телеграм-бота является одним из увлекательных и полезных способов практического применения программирования. Я решил создать своего бота как вариант добавления нового увлекательного проекта в свой портфолио, а также для создания комфорта и удобст...

[Перевод] Как мы обновили старый кластер Elasticsearch на 3 ПБ без простоев. Части 6 и 7 (финальная) Прим. переводчика: автор статьи рассказывает, как его команда убедилась, что новый кластер Elasticsearch работает в соответствии с ожиданиями и полностью готов к production-нагрузкам. Также подводит итоги всего процесса и анализирует получившуюся архитектуру нового кластера ...

11 полезных AI сервисов + Plasma AI Telegram бот с 160 ролевыми моделями, эксклюзивом от chatGPT 4 и MidJourney 5 После моей предыдущей статьи про 30+ задач, которые может выполнять chatGPT, мы решили запустить своего чат бота в Телеграм, которые за 3 месяца вырос до более 1 миллиона активных пользователей. Сегодня мы запустили большое обновление и функционал "Ролевых" моделей chatGPT 4...

Ценный QA Automation – кто он на самом деле? Загадка от Жака Фреско Всем привет! Меня зовут Иван и я Head of QA Automation в Skyeng. Я регулярно занимаюсь обучением Manual QA и менторством начинающих QA Automation (далее – QAA) и часто слышу от падаванов вопрос: «А как же мне, собственно, стать QAA?»Вопрос многогранный. В статье хочу поделит...

Архитектура игры на Unity без Zenject. Часть 1 Всем привет!Меня зовут Игорь Гулькин, и я Unity разработчик. За свои 5 лет накопилось много опыта, поэтому в этой статье хотел бы поделиться принципами и подходами, с помощью которых можно реализовать архитектуру игры просто и гибко без фреймворка. Цель доклада, дать не прос...

Развертывание ASP.NET Core приложения в Kubernetes Данная статья является краткой инструкцией по развертыванию ASP.NET Core приложения в Kubernetes с написанием Dockerfile для формирования образа (Docker image) и минимального манифеста для создания деплоймента и объекта, предоставляющего доступ к нему, – в статье будет испол...

Антирейтинг 2022 Эта статья написана по аналогии со статьей «Как не надо писать на Хабр: Антирейтинг 2017». Статьи взяты за 2022 год. Кроме отрицательных значений рейтинга, есть список по абсолютному количеству минусов (видимо, самые обсуждаемые темы). «Вот найдется же нехороший, которому ...

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

Hydrosphere — управляем ML как сервисом Подобно тому, как в мире разработки многокомпонентных систем применяются подходы для управления и мониторинга микросервисами на основе инструментов DevOps (для запуска и восстановления сервисов, передачи данных, наблюдения за распределенными операциями, выполнение замеров и ...

Простые метрики по качеству: как их вести и зачем они нужны Всем привет! Меня зовут Алиса, я — ведущий тестировщик в компании Constanta, и сегодня расскажу вам о простых QA метриках, помогающих отслеживать качество продукта.Если мы вобьем в поисковой строке незамысловатое словосочетание “метрики QA”, то увидим, что почти все ссылки в...

Централизация логирования микросервисов с Graylog Трассировка и анализ ошибок в микросервисной архитектуре без средств централизации логирования обычно причиняет неудобства, поскольку для понимания “что и на каком микросервисе умерло” приходится обходить микросервисы по очереди, сверять и сопоставлять данные в логах. В данн...

Пишем умный поиск по коду с Open AI В этой статье мы кратко рассмотрим технологию, которая лежит в основе ChatGPT — эмбеддинги, и напишем простой интеллектуальный поиск по кодовой базе проекта. Читать далее

Аномалии под нагрузкой в PostgreSQL: о чём стоит помнить и с чем надо бороться В этой статье мы разберём несколько аномальных случаев высокой нагрузки в СУБД PostgreSQL. Что это такое? Обычно PostgreSQL хорошо показывает себя под нагрузкой и оправдывает ожидания в отношении производительности — она остаётся высокой. Но при определённых профилях нагрузк...

Бинарники из Python-файлов: Nuitka-компилятор, обзор и небольшое исследование Здравствуйте, дорогие хабровчане. Сегодняшняя статья — результат моего небольшого исследования. Я хочу показать, как компилировать бинарные модули расширения (.so) из python-файлов, чем они будут отличаться и как с ними работать. Делать это мы будем при помощи компилятора N...

Как написать автотесты деплоя и сэкономить нервы DevOps-инженеров Привет! Меня зовут Артём Комаренко, я работаю на позиции QA Lead в команде PaaS в СберМаркете. Хочу поделиться историей, как мы придумывали способ быстро убедиться, что очередные изменения в скриптах деплоя не разломают процесс выкатки во всей компании. Статья будет полезна ...

C# и обработка медиафайлов средствами FFmpeg, Pandoc и ImageMagick Приветствую читатели, в этой статье я бы хотел рассказать о написанной мной OpenSource библиотеке MediaFileProcessor под платформу .NET (.netstandart 2.0). Читать далее

Self-Supervised Learning. Contrastive learning В предыдущих статьях мы разобрали много аспектов, связанных с SSL. Теперь пришло время посмотреть на методы, которые используют достаточно очевидное, на первый взгляд, знание - одна и та же картинка похожа, а разные картинки - разные. Это основная идея методов с contrastive...

Среда разработки VS Code на ТВ-приставке Решил написать небольшой обзор проделанной работы по разработке нестандартного решения, собранного, как обычно, их стандартных компонентов.Кратко оно выглядит так:Мультимедиа-приставка (была с Андроидом), в ней запущен Линукс, в нем развернута IDE Visual Studio Code, в ней у...

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

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

Использование шейдеров во Flutter. Часть 2 Всем привет! На связи Юрий Петров, Flutter Team Lead в Friflex. В предыдущей статье мы познакомились с работой шейдеров во Flutter, а также рассмотрели, как написать свой собственный шейдер на языке GLSL. В этой части разберемся, как импортировать готовые шейдеры и управлять...

Yet Another Домашний Сервер. Железо (часть 1) Вот и я потихоньку пришёл к тому, чтобы сделать свой домашний сервер. Точнее, идея появилась ещё со школьных времён, но вот реализовать в каком-либо виде получилось только сейчас. И я бы хотел поделиться тем, что у меня получилось, с читателями Хабра, и ко всем написанным ст...

Разворачиваем Kubernetes-кластер на bare metal под управлением Deckhouse и создаем в нем виртуальные машины В новом релизе Kubernetes-платформы Deckhouse v1.43 появилась система виртуализации, основанная на современных технологиях: KubeVirt, Cilium, LINSTOR. Она позволяет в удобном и привычном для пользователя платформы режиме запускать виртуальные машины и управлять их жизненным ...

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

Ретро, роли и спринты: очевидные (и не очень) вещи, которые мы поняли только спустя три года разработки Привет! Меня зовут Артур Карапетян, я Product Owner в Starfish24. Мы помогаем российским ретейлерам управлять жизненным циклом заказа, выстраивать и контролировать логику обработки с помощью OMS-системы. В общем, сложные омниканальные заказы — это про нас.В конце 2018 года я...

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

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

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

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

Нельзя просто взять и обезличить данные — опыт команды разработки «Сферы» Бизнесу нельзя использовать данные клиентов as is для тестов. Отдел разработки не может просто взять персональные данные (ПДн) и проверить на них новую фичу, обучить Machine Learning-модель. Этот момент регулируют законы и отраслевые стандарты. Чтобы с данными можно было раб...

Бизнес-архитектура MUST HAVE Бизнес-архитектура и ее место в компанииПростая истина: чем комфортнее и красивее город, тем более приятно и удобно в нем жить. Архитектура города – это не только архитектура конкретных зданий и сооружений, но и сама их совокупность, создающая пространственную среду для...

Я выбрал язык программирования с помощью икигаи, коучей и рефлексии — и это сработало Я в IT уже 15 лет: 10 лет разрабатывал DevOps в 1C и 3 года руководил отделом разработчиков в Сбере и не писал код. Однажды я понял, что хочу кодить, а не руководить — и передо мной встал вопрос: какой выбрать язык?Может быть, взять самый популярный? Или тот, по которому бол...

Подробная пошаговая инструкция как настроить сервер на Linux и подключение по API к ChatGPT. Для Python и Node.js ChatGPT набирает все большую популярность, ведь он может помочь человеку или даже заменить его в ряде задач. С ним можно взаимодействовать не только через графический интерфейс, но и по API. Таким образом его можно встраивать в свои системы, чтобы решать практические задачи ...

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

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

[Перевод] Тестирование автоматизации Ansible с помощью Molecule Часть 1 Molecule – это проект Red Hat, призванный помочь в тестировании ролей Ansible. Он обеспечивает поддержку тестирования с различными операционными системами и дистрибуями. Molecule также является весьма разноплановым проектом, позволяющим использовать множество провайдеров вир...

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

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

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

Язык программирования Vala и где он используется. Создаем простое приложение для прослушивания радио Vala был разработан для более простой и быстрой разработки приложений с использованием библиотеки GTK. Этот язык уникален тем, что код при выполнении программы транслируется в код на языке C, а уже потом преобразуется в машинный. Благодаря этому скорость выполнения программы...

MMO-стратегию Romans: Age Of Caesar делают создатели Stronghold Romans: Age Of Caesar — MMO-стратегия на ПК и смартфоны. Но если в Steam она появилась ещё 27 апреля 2022 года, то на iOS и Android сейчас проходит только пробный запуск. Попробовать раннюю версию можно в Австралии, Новой Зеландии и на Филиппинах. Студия Firefly, которая за...

Entity Framework c Code-First миграциями для .Net Maui Если вы, как и я, уже являетесь большим поклонником Microsoft Entity Framework и хотели бы начать использовать его локально в своем мобильном приложении, с появлением .Net Maui на рынке, это стало возможным.Небольшое замечание: для ускорения времени запуска мобильного прилож...

Колдовской NeoVIM. Часть вторая. “Конфиг Всевластья” Никто не любит конфиги (я уж точно). Они скучные и нединамичные.Но со своим конфигом Nvim’а я ношусь, как Голлум с кольцом Всевластья. Моя прелесссссть. Я боюсь потерять свой конфиг, боюсь, что с ним что-то случится. Другие хотят забрать тебя, моя прелессссть. Саша тебя им н...

[Перевод] Производительность параллельных алгоритмов STL В этой статье я собираюсь провести тест производительности на компиляторе Microsoft и компиляторе GCC, чтобы ответить на простой вопрос: окупается ли политика выполнения?  Читать далее

3D-графика в Go В большинстве случаев, когда речь заходит об использовании Go, вспоминается backend или DevOps и в самую последнюю очередь можно подумать об использовании Go для создания мобильных или десктопных приложений. Но в действительности, благодаря возможностям интеграции с нативным...

Кодогенерация Dart Доброго дня, в данной статье подробно рассмотрим как работает кодогенерация во Flutter. Главная цель, которая стояла перед мной при написании статьи - это разбор каждого этапа настройки кодогенерации, чтобы у разработчика, прочитавшего этого материал, сложилась полноценная к...

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

[Перевод] Введение в GraphQL для .NET-разработчиков: мутация GraphQL представляет из себя язык запросов и манипулирования данными для API, а также среду для выполнения этих запросов с существующими данными. Он позволяет различным клиентам использовать API и запрашивать только те данные, которые им нужны, а также он помогает решить про...

Можно ли стать программистом (в возрасте)? Начав с поиска в интернете, удивился, что программистом в возрасте хотят стать с переодичностью в 5 лет, может это как-то связано с циклом разработки, но оставим тему для дальнейшего исследования!Здравствуйте, меня зовут Олег и я программист! Пусть будет таким начало исповед...

Как за неделю превратить Open redirect в RCE В этой статье я расскажу вам о том, как ровно год назад я связал в цепочку несколько проблем безопасности для достижения Удаленного выполнения кода (RCE) на нескольких серверах компании VK. Я постарался описать свои шаги в подробностях, так как мне самому, как постоянному чи...

Вознаграждения в Bug Bounty VK, или Как мы работаем с деньгами Привет, Хабр! В прошлой статье я рассказал о том, как правильно искать уязвимости и составлять отчёты для программы Bug Bounty VK, сегодня я хочу раскрыть тему вознаграждений. Если тебе интересно узнать, почему с точки зрения владельца программы и багхантера это два абсолютн...

Критерий Манна-Уитни — самый главный враг A/B-тестов Всем привет! Меня зовут Дима Лунин, я аналитик в компании Авито. В этой статье я расскажу про критерий Манна-Уитни и проблемы при его использовании. Если вы анализировали A/B-тест, где вас интересовал прирост или падение какой-то метрики, то наверняка использовали критерий М...

[Перевод] Как работает Docker Desktop Networking Современные приложения активно используют сети. Обычное дело, когда во время сборки apt-get/dnf/yum/apk install устанавливает пакет из репозитория пакетов дистрибутива Linux. При выполнении команды приложение может захотеть подключиться к внутренней базе данных postgres или ...

В очередь, ...! Как управлять состоянием системы через события Существует множество разных подходов к построению архитектуры серверных приложений. В данной статье рассмотрим Event-driven архитектуру (она же событийно-ориентированная). Рассмотрим основные принципы, как перейти от связей Компонент А <-> Компонент В, к связям через с...

Нефункциональные проверки при тестировании мобильных приложений Привет! Я Линар Юнусов, тестировщик из мобильной команды СберМаркета. Если вы не первый день в тестировании, то знаете про существование нефункциональных проверок и как они могут поломать жизнь (зачеркнуто) приложение. В этой статье расскажу про то, к каким проверкам мы приш...

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

Как ускорить бэкап и сэкономить место на сторадже: на примере ArenadataDB ddboost и СХД Dell EMC Data Domain Всем привет, меня зовут Андрей, я – системный архитектор Arenadata и в этой статье мы рассмотрим интеграцию решения логического резервного копирования и восстановления gpbackup/gprestore с программно-аппаратным комплексом Dell EMC Data Domain — задача, которой наша команда р...

Как слить кучу денег на то, что не полетит. Или мои выводы из историй знакомых стартаперов Привет! На связи Боровков Евгений, основатель конструктора прототипов сайтов wmtools.ru. В этой статье я хочу поделиться выводами, которые я сделал, узнав несколько историй нескольких стартапов. Читать далее

Фукуяма, NAT, TCP и кротовые норы Данная статья является продолжением темы обсуждавшейся в статье "Философия борьбы с NAT" и так же нацелена на сетевых разработчиков, С++ программистов и просто интересующихся тенденциями развития интернет индустрии. Предполагается, что читатель в общих чертах знаком с модель...

Обзор пакетов SciPy, Pyomo и CVXPY для решения задач условной оптимизации Привет, Habr! На связи Михаил Будылин и Антон Денисов, мы работаем в отделе аналитики данных X5 Tech.В этой статье мы продолжаем говорить про прикладное применение теории оптимизации. В частности, делаем краткий обзор существующих open-source решений в Python,...

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

Миссия невыполнима: подключаем электросчётчик SDM220 к трансформеру Lavritech V7.1 Lite по RS485/Modbus RTU Некоторое время назад в моём блоге вышел цикл статей об устройстве и программировании Lavritech V7.1 Lite — ESP32 контроллера с необычной модульной архитектурой. Необычность архитектуры заключается в том, что функционал Lavritech V7.1 Lite можно набирать из отдельных модул...

Tenebris: 7 кругов ада инди-разработки Друзья, меня зовут Пётр, и в этой статье я попробую рассказать о нашем уже трехлетнем опыте в разработке инди-игры  —  Tenebris: Terra Incognita. Через какие сложности мы прошли и чего добились.Работа над игрой началась в мае 2019 года, про старт я написал ранее в ...

Permissions в Android: как не допустить ошибок при разработке Всем привет! На связи Юрий Шабалин, ведущий архитектор Swordfish Security и генеральный директор Стингрей Технолоджиз. Эта статья написана в соавторстве с Android-разработчиком Веселиной Зацепиной @VeselinaZatsepinaa). В материале мы поговорим про один из ключевых механизмов...

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

Бесплатный мультиязычный чат для сайта на Tawk + Notion + Telegram + chatGPT + GPT-Index Вы хотите общаться с посетителями сайта на всех языках и при этом чтобы вам помогал обученный на вашей базе знаний chatGPT?Я следил за различными видами использования chatGPT с момента его выхода. Предлагаемое в статье решение я еще не встречал и поэтому думаю оно будет кому...

Бизнес-симулятор Big Ambitions стал внезапным хитом Steam В игровой индустрии встречаются спящие хиты — их никто не ждёт, но они внезапно набирают популярность. Таким проектом стала стратегия Big Ambitions, которую геймеры сравнивают с GTA, The Sims и Cities: [...]

Как писать конспекты на компьютере быстрее, чем от руки, при помощи VS Code Привет всем!В этой статье говорится о том, как я конспектирую на компьютере, а точнее описываются способы ускорения набора LaTeX-овского текста. Читать далее

Разработка приложений в среде Android OS и доска "почёта" для комментаторов Однажды читая как линуксоиды надрываются в попытках оправдать кривые дистрибутивы и переложить вину за все проблемы на пользователя, я заметил один весьма интересный "экземпляр", мне и самому стало интересно, а правду ли он там написал...

C++, параллелизм и введение в автоматное программирование в SimInTech Поводом для написания статьи послужило не очень приятное для меня событие: модератор Хабра убрал теги – «С++» и «Параллельное программирование» из моей крайней статьи [1]. Этому предшествовало сообщение пользователя, который по его словам не заметил в статье ни С++, ни парал...

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

Как мы запускали сервис по продаже подписок на Spotify, Netflix, PlayStation Меня зовут Рома Васильев, я дата-инженер. В марте 2022 года мы с коллегой создали стартап — сервис-посредник, через который в России можно купить подписки на Netflix, Spotify, PlayStation, Steam и другие площадки, которые ушли с рынка. В этой статье расскажу, как это вс...

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

Исследование нагрузки на ELK stack и тюнинг Logstash Всем привет! Меня зовут Александр, и в этой статье я расскажу про то, как столкнувшись с многократно увеличившейся нагрузкой на ELK stack сначала было диагностировано узкое место, а после произведён его тюнинг. Хоть и в заголовке статьи уже есть спойлер что произведен только...

Советы по архитектуре кода для начинающих Для кого статьяВы уже написали свои первые 1000 строк кода и сейчас хотите сделать их понятнее, потому что внесение изменений занимает столько-же времени, сколько написать заново, но советы из ООП, SOLID, clean architecture и т.д. непонятны вам.О чем статьяЭта статья - не об...

Index.ts – зло и польза Привет всем! Меня зовут Михаил, я старший Frontend-разработчик в НЛМК, занимаюсь разработкой одной из внутренних информационных систем на React + Typescript.Расскажу про самый короткий и наименее трудоемкий способ экспорта и импорта модулей, что частенько требуется для постр...

Известный инсайдер заявил, что Samsung ищет новое направление и может отказаться от подразделения смартфонов Известный инсайдер Ice Universe, который регулярно делится эксклюзивной информацией о новинках мобильной индустрии, опубликовал интересную информацию о возможных направлениях развития Samsung. По его словам, южнокорейский бизнесмен и миллиардер Ли Джэ Ён, который фактич...

From Zero to Hero: определите ваш уровень решения LeetCode задач от 1 до 5 В этой статье я хочу написать про мой опыт взаимодействия с платформой LeetCode, и описать свою подготовку к интервью в FAANG подобные компании путем разбиения ее на уровни.А какой у вас уровень? Читать далее

Javarush, так ли полезно спустя 9.5 лет? Про Javarush, писали уже многие, в этой статье хотелось бы выразить свое мнение буквами и символами. Как вы уже наверняка знаете, Javarush - это весьма интересный проект, который предлагает обучение языку программирования Java, здесь вы изучите основы, решая простые (и не оч...

Модераторы Хабра в лицах: будем знакомы Я никогда не мечтала быть модератором. Ну то есть, даже мысли не было: хочу или не хочу, в Хабре я занималась совершенно другими вещами. Однако жизнь любит шутить, и 12 июля 2017 года я стала ведущим менеджером по работе с пользователями. Эта должность предполагает кучу функ...

Курсы для ИТ-специалистов от компаний: как они устроены и кому будут полезны Есть много способов получить ИТ-специальность и найти работу: от поступления в вуз до самообучения. Один из таких способов — корпоративные курсы. Меня зовут Юлия Купряшова, и я уже четыре года курирую курсы Тинькофф Финтеха. Расскажу, как устроены такие курсы, чем они о...

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

[Перевод] Управляем модулем ядра Linux Почему пользовательское приложение работает некорректно? Существует не так много способов, которые бы помогали выявить проблему. В большинстве случаев для поддержания высокой доступности требуется стороннее программное обеспечение. В статье рассказываем, как настроить монито...

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

Компонентный подход. Реализуем экраны с помощью библиотеки Decompose Это вторая часть из серии статей про компонентный подход. Если вы не читали первую часть Компонентный подход. Боремся со сложностью в Android-приложениях, то рекомендую начать с нее.Ранее мы обсудили, что компонентный подход — это способ организации приложения в виде иерархи...

Привет из мира 1С — Обработка результатов запроса произвольными вычисляемыми полями. Обзор некоторых новых функций СКД В данной статье вспомним как обрабатывать результаты запроса в вычисляемых полях СКД, а так же сделаем небольшой обзор на новые функции СКД платформы 8.3.20. Читать далее

Техподдержка: как научиться жить без Jira Привет! Меня зовут Савр, я работаю инженером технической поддержки Arenadata. В прошлом году нам, как и многим другим компаниям, использовавшим зарубежное ПО, пришлось переходить на российские аналоги. В частности, с болью в сердце мы отказались от Jira Service Management (д...

Используем аннотацию @Transactional like a pro Привет, Хабр! Меня зовут Никита Летов, я тимлид бэкенд-разработки мобильного приложения Росбанка для физических лиц. Этот пост входит в серию постов по разработке бэкенд-микросервисов на Java и Spring и является адаптацией моего доклада с JPoint 2022. Также хочу предупр...

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

Wave Function Collapse для процедурной генерации в Unity Wave Function Collapse – это алгоритм, c помощью которого можно реализовать генерацию чего угодно, что можно было бы описать с помощью правил или конкретным примером. В этой статье мы рассмотрим, как использовать WFC для генерации карты в Unity. Читать далее

Кастомизация диалоговых окон WixToolSet на примере windows installer и executable packages Приветствую!В этой статье я покажу вам свой вариант использования набора утилит WixToolSet для создания кастомных диалоговых окон с возможностью получения предустановленной информации (пароли, явки и прочие параметры). И приведу пример использования кастомных окон в простом ...

Error Budget, SLO и мониторинг: советы для начинающих SRE-инженеров Книга Google о SRE, статьи экспертов, документация и обучающие курсы дают исчерпывающие знания о том, как в идеале должен работать SRE в компаниях. Правда, ключевое здесь – «в идеале». Работа с метриками и управление инцидентами в командах может сильно различаться по ряду пр...

Библиотека компонентов для дизайнеров приложений Разбираемся с тем, как принести максимальную пользу команде дизайнеров с помощью подключаемой библиотеки компонентов в Figma, на примере нашей команды по нативной разработке мобильных приложений. Читать далее

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

Xiaomi выбрала нового президента. Им стал бывший глава Redmi Лу Вейбинг Xiaomi сделала важное объявление: компания официально назначила Лу Вейбинга новым президентом Xiaomi Group на международном рынке Китайский технологический гигант ранее уже объявил, что бывший президент Ван Сян уходит в отставку 30 декабря, а Лу Вейбинг должен заня...

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

[Перевод] Работа с SQL Server в C# с помощью скриптинга. Часть 1 В этой статье я покажу вам, как работать с Microsoft SQL Server в C# проектах посредством скриптинга. Реализовать это можно как в Windows, так и в macOS. Поскольку Windows, очевидно, является намного более популярной целевой платформой для C# и SQL Server, больше внимания я ...

[Перевод] Телематическая система автомобиля Мы в команде Third Man по долгу службы изучаем довольно много англоязычных материалов. Часто интересными статьями хочется поделиться с коллегами и обсудить поподробнее. Но не всегда есть время всей командой читать 20+ страниц англоязычного текста, так что сокращённый и “подс...

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

3 ошибки хорошего Product Manager С 2013 года я работаю в IT и прошла путь от Account manager до Senior Product manager в таких компаниях как МегаЛабс (Мегафон), Билайн, X5 Retail Group. С 2017 года я начала собирать свои команды в роли PO (до этого работала под руководством других PM или PO) и все это время...

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

Программы пишут программы, или стоит ли разработчикам осваивать новые профессии После выхода ChatGPT только ленивый не написал о нём. Языковая модель GPT-3.5 от OpenAI привлекла широкое внимание общественности своими возможностями: создание текстов, возможности перевода, получения точных ответов и использования контекста для диалога. Но больше всего раз...

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

Ультимативный гайд по HTTP. Часть 1. Структура запроса и ответа Привет! Меня зовут Ивасюта Алексей, я техлид команды Bricks в Авито в кластере Architecture. Я решил написать цикл статей об истории и развитии HTTP, рассмотреть каждую из его версий и проблемы, которые они решали и решают сейчас. Весь современный веб построен на проток...

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

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

Создаем свой собственный язык программирования с использованием LLVM. Часть 1: Лексический и синтаксический анализ Это первая статья из цикла о том, как создать свой собственный ООП язык программирования с использованием LLVM.В данной статье мы начнем с введения в серию и начнем реализацию с написания лексического и синтаксического анализаторов для подмножества языка, который будет полно...

Автоматизируем домашний медиацентр на Synolgy NAS Приветствую читатели хабра, в этой статье я бы хотел поделиться своим опытом организации домашнего медиацентра с торрент качалкой на Synology NAS: sonarr + radarr + jackett + qBittorrent. Читать далее

Терапия решения проблем и начало карьерного роста после 45 Как следует из названия, терапия решения проблем (PST - Problem-Solving Therapy)  направлена на обучение и развитие способностей для решения проблем. Она может использоваться как для лечения телесных или умственных страданий, так и просто для разрешения психологических ...

Эволюция Dev-серверов CarPrice: от монолита к микросервисам и Kubernetes Нужен ли каждому разработчику свой dev-сервер? Многие компании, опасаясь лишних расходов и проблем, даже не пробуют внедрить такой подход.CarPrice развернул свои dev-серверы еще в те далекие времена, когда все работало на монолите. А после монолита пилил собственный сервис д...

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

Фирменное приложение Porsche, позволяющее управлять функциями авто с телефона, перестало работать в России Экс-глава ассоциации «Российские автомобильные дилеры» Олег Мосеев сообщил, что у владельцев автомобилей Porsche в России перестало работать мобильное приложение. Эти данные подтвердил и дилер «Автодом». «Насколько я знаю, у Porsche прилож...

Самый простой способ ввести Linux в домен Всем привет!Термин Microsoft Active Directory Domain Services включает в себя множество технологий, поэтому сразу уточню, в этой статье речь пойдет про использование контроллера домена только для аутентификации пользователей. То есть в финале, нужна возможность любому сотруд...

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

Один плагин, чтоб править всеми. Как разработать сканер на Flutter для 3 платформ и ускорить ввод данных в 2 раза Привет! Меня зовут Сергей, я Flutter‑разработчик SimbirSoft. В этой статье хочу поделиться интересным платформоспецифичным кейсом для мобильных устройств и ТСД. Нам с командой удалось сократить затраты на разработку и ускорить процесс ввода данных в 2&nbs...

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

Что такое service mesh простыми словами Всё больше компаний переходят на микросервисы. Такой выбор вполне оправдан: при должной реализации они решают множество проблем монолита. За последние несколько лет микросервисная архитектура сильно эволюционировала и обросла вспомогательными технологиями, одна из которых se...

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

Основы OkHttp в Android-разработке OkHttp — библиотека и по совместительству HTTP-клиент с открытым исходным кодом для Java и Kotlin, разработанная Square, которая также создала Retrofit.Порой стоит использовать не вездесущий Retrofit, а OkHttp из-за его производительности и большего функционала.В статье подр...

[Перевод] Как получить все сообщения через логическую репликацию Postgres В одной из предыдущих статей я описал Push-based Outbox Pattern (шаблон исходящих сообщений на основе push с логической репликацией Postgres). Идея заключается в том, чтобы сохранить исходящее сообщение (например, событие) в той же транзакции базы данных вместе с и...

Особенность CI/CD-конвейеров для корпораций и новое решение от Сбера Какие инструменты первыми приходят вам на ум при упоминании CI/CD pipeline? Вероятнее всего, это Gitlab CI/CD, Jenkins CI, Azure DevOps. На самом деле инструментов десятки, но так было не всегда. Ещё недавно в крупных компаниях главенствовал Windows Server, Power Shell был л...

Как мы «уволили» старые процессы планирования и «наняли» новые: опыт разработки собственного инструмента Привет, Хабр! Меня зовут Анзор Кардан, я руководитель продукта Teamplanner в Х5 Tech. В статье я поделюсь собственным опытом выбора инструмента планирования проектов, через какие стадии мы прошли и с какими сложностями столкнулись (спойлер: в итоге мы разработали свой собств...

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

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

[Перевод] Ansible для начинающих В этой статье мы рассмотрим базовые и более сложные концепции Ansible с примерами. Статья предназначена для тех, кто только начинает работу с Ansible. Ansible — это инструмент infrastructure as a code для автоматизации задач по подготовке и конфигурированию инфраст...

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

Конфигурирование BGP на Juniper MX Привет, мимо пробегающий читатель!В прошлой статье я обмолвился, что, возможно, опишу конфигурацию присутствующих в решении маршрутизаторов Juniper MX204. Близится конец года, и напоследок я решил написать небольшую статью на эту тему. Читать далее

Фильтрация и пагинация в FastAPI Недавно столкнулся с задачей написать фильтрацию на FastAPI, пошёл гуглить и нашёл замечательную библиотеку fastapi-filter, которая сильно упрощает задачу. О ней в этой статье и пойдёт речь, а также заодно покажу простой способ пагинации без библиотек. Читать далее

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

Kotlin Symbol Processing. От теории до практики Я расскажу в этой статье о Kotlin Symbol Processing, также известном как KSP.Сначала обсудим теоретические основы работы KSP, после, конечно же, перейдём к практике. На примере небольшой задачи, подобной той, что мы решаем с помощью KSP в нашей компании, покажу, как анализир...

Nanc — backend-agnostic CMS с Flutterлюшками Привет! Сегодня я хочу представить вам плод моего многомесячного труда по ночам и выходным, призванный улучшить опыт управления контентом и привнести в мир разработки Flutter-приложений дополнительные возможности.Далее речь пойдет о Nanc (читается как Нэнс, но я внутренним г...

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

[Перевод] Состояние WebAssembly в 2022-23 годах Автор статьи Жерар Галлан известен как автор книги “WebAssembly in Action”, выпущенной Manning в 2018 году. Существует перевод его книги на русский — “WebAssembly в действии” (Питер, 2022). Предыдущий обзор The State of WebAssembly – 2021 and 2022 опубликован автором в январ...

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

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

Cyberpunk 2077: Phantom Liberty станет крупнейшим DLC за всю историю CD Projekt RED The Witcher 3 установил новый стандарт для DLC. Дополнение добавило в игру целый регион и завершило сюжетную линию Геральта. Но польские разработчики из CD Projekt RED не планируют останавливаться. Они хотят поднять планку еще выше с DLC Cyberpunk 2077: Phantom Liberty. Ма...

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

Быстрый приём платежей QIWI в проекте Python Необходимость добавить возможность оплаты чего-либо в своём проекте всплывает достаточно часто, при этом возня с ИП, банковскими договорами и прочей бюрократией мало кого привлекает, особенно если масштабы проекта сопоставимы с небольшим telegram-ботом или чем-то подобным. Н...

Доход ~40 000 руб. в месяц с Телеграм-канала. Делюсь опытом. Даю аккуратные советы… Привет! Меня зовут Максим Кульгин, я основатель xmldatafeed.com и clickfraud.ru. Мы занимаемся сбором данных и защитой от скликивания рекламы. Я веду Телеграм-канал про ИТ-бизнес. В нем пишу всё, с чем сталкиваемся в процессе работы, без приукрашивания. Сейчас...

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

Магия размерностей и магия Котлина. Часть третья: Смешение магий Это третья, заключительная статья серии, посвящённой библиотеке по манипулировали физическими величинами системы СИ, а также другими величинами, в Котлин. В ней мы рассмотрим, как фундаментальные математические структуры, которые природа “заложила” в систему СИ, предопределя...

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

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

[Перевод] Отправка уведомлений из Symfony API с помощью Mercure В статье я создал атрибут, чтобы помечать операции API для выполнения в фоновом режиме. Когда аннотированная операция вызывалась как фоновая, ее выполнение задерживалось с помощью symfony messenger, клиент получал в ответ код состояния HTTP 202 Accepted. В этой статье я внес...

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

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

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

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

Kubernetes через грабли или внедрение в университете К Kubernetes мы присматривались два года. Изучали различные статьи, пытались его разворачивать, но после развертывания не понимали что делать дальше. Пока однажды мы не решили попробовать завернуть одну из систем в контейнер. Для оркестрации контейнера была выбрана система D...

Как починить QA-отдел, или Ещё один переезд в Go Привет, Хабр.  Меня зовут Саша, я занимаюсь разработкой инструментов мониторинга тестирования, но по факту ещё и исполняю роль руководителя направления QA в домене Маркетплейса, ответственном за создание всех карточек товаров на Ozon.  Если вкратце, наша ...

Дизайн сетей ЦОД. Часть 3. Управление трафиком В этой статье мы продолжим тему дизайна сетей ЦОД. Мы уже поговорили про надежность, рассмотрели организацию кабельной инфраструктуры в ЦОД и теперь самое время перейти к рассмотрению вопросов управления и оптимизации трафика. Немаловажную роль в оптимизации трафика на логич...

Честно об уровнях знания языка/владения языком (Субъективное мнение о системе языкового образования и её связи с IT) Добрый день! Недавно я прочитал статью об английских артиклях на данной платформе, и она вдохновила меня на публикацию своих мыслей о системе современного языкового образования.Немного обо мне. Я занимаюсь преподаванием английского уже 7 лет, последние три года я сотрудничаю...

Импортозамещаем Evernote. Obsidian – менеджер заметок и лучший друг менеджеров Привет, Хабр! Меня зовут Николай Суворов. Я – профессиональный менеджер, руководитель направления Delivery Management в МТС Digital. Занимаюсь Enablement Platform – единой платформой для быстрого создания продуктов в экосистеме МТС. Сегодня я расскажу о своем pet-проекте и о...

Сам себе сотовый оператор … Кроме типовых для журнала статей, там была статья за авторством некоего «DI HALT» про то, как из двух телефонов и микроконтроллера извлечь кучу лулзов. «Прикольный ник» — подумал мальчик Андрей и перелистнул страницу, ибо ниасилил. А за ней была статья того же автора про т...

Вышло приложение нейросети ChatGPT для Apple Watch. Что оно умеет и как его скачать Нейросети продолжают захватывать мир: ChatGPT, ставший популярным в последние месяцы, уже активно интегрируют в другие приложения за счет открытого API. Несмотря на то, что пользоваться ChatGPT можно на разных устройствах, одним из самых удобных вариантов лично мне видятся ...

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

Известный инсайдер заявил, что поклонники Samsung сами виноваты в том, что Galaxy S23 Ultra внешне копирует Galaxy S22 Ultra Известный инсайдер Ice Universe, который регулярно делится эксклюзивной информацией о новинках мобильной индустрии, опубликовал новые фотографии макетов серии Samsung Galaxy S23, и заявил, что поклонники сами виноваты в том, что Galaxy S23 Ultra внешне копирует Gal...

STM32 Часть 1. Как поморгать светодиодиком Приветствую! Данная статья открывает цикл статей о программировании микроконтроллеров STM32 для новичков.Сегодня я расскажу как написать моргание светодиодом двумя способами с использованием инструментов, труднодоступных в 2023 году. Читать далее

Магия размерностей и магия Котлина. Часть первая: Введение в KotUniL Амперы нельзя складывать с вольтами. Сантиметры можно складывать с дюймами, но очень внимательно. Иначе получится как с космическим аппаратом стоимостью 125 миллионов долларов Mars Climate Orbiter, который успешно долетел до Марса, но бездарно разбился о его  поверхност...

Тест – это вещь! F#, тестирование на базе Expecto. Часть первая Expecto — фреймворк для тестирования, написанный на F# и для F#. Он довольно хорошо известен в рамках F#-сообщества, и у разработчиков, сумевших отгородиться от C# в достаточной степени, используется как платформа для тестов по умолчанию. Новички в F#, а также мимо проходящи...

[Перевод] 8 бесплатных инструментов искусственного интеллекта, которые пригодятся Всем привет! Меня зовут Маруся, я аналитик данных, веду блог в телеграме Аналитика и growth mind-set.В этой статье собрано 8 бесплатных инструментов на основе искусственного интеллекта, большинство из которых просты в использовании и самое главное бесплатны для тестиров...

9 книг для тимлидов и тех, кто хочет ими стать Привет! На связи СберМаркет Tech. Эту подборку книг составили инженерные менеджеры СберМаркета и ведущие подкаста «Для tech и этих» Олег Федоткин, Никита Елагин, Семён Мацепура и Вячеслав Артемьев. Сейчас в подчинении у ребят суммарно более 200 инженеров. Мы попросили их под...

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

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

От потоков к корутинам: как и почему видоизменились примитивы синхронизации в языке Kotlin (Часть 1) В этой статье мы рассмотрим, как и почему изменилась реализация примитивов синхронизации из стандартной библиотеки Java и пакета java.util.concurrent для Kotlin Coroutines и для языка Kotlin в целом.Разберемся, какие реализации примитивов синхронизации потоков актуальны в ко...

Мониторинг межсервисного взаимодействия Kubernetes с помощью протокола NetFlow Часто возникает ситуация, когда в кластере работает много взаимодействующих между собой сервисов, но из-за спонтанности разработки эти взаимодействия могут быть нигде не документированы. То есть ни команды разработки, ни команды эксплуатации доподлинно не знают, какие прилож...

Поиск данных в инструментах Data Governance: вызовы и решения Добрый день!Меня зовут Никита, я работаю ведущим системным аналитиком в Департаменте управления данными компании Ростелеком.В данной статье я опишу наш опыт использования Реестра отчетов и Бизнес-глоссария, подводные камни, с которыми мы столкнулись, а также планы по оптимиз...

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

[Перевод] Вот что я нагуглила за неделю в качестве старшего инженера-программиста Три года назад разработчик Софи Кунин* опубликовала пост под названием «Вот что я нагуглила за неделю в качестве профессионального инженера-программиста», и он явно нашел отклик у читателей, поскольку стал довольно вирусным. За эти три года многое произошло. Софи повысили, т...

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

ИИ в играх в 2022 году Современная волна ИИ хайпа началась с вполне конкретного события: победы ИИ над чемпионом мира в игре в Го. Это вызвало шквал интереса к обучению с подкреплением и привело к запуску работ над созданием ИИ для других более сложных игр (Starcraft, Dota и.т.п.). Однако, с появл...

[Перевод] 5 неочевидных возможностей FastAPI: упрощаем работу с бэкендом на Python Почти все, с чем мы сталкиваемся в интернете, имеет отношение к API, а точнее к версиям этого программного интерфейса, использующим для работы HTTP-запросы. Когда мы хотим узнать прогноз погоды, интерфейс браузера или мобильного приложения вызывает API Яндекс.Погоды или API ...

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

Насколько можно улучшить распознавание речи в записях с АЗС за месяц Эта история началась с того, что к нам пришел клиент, которому нужна была система распознавания речи. Да не простая, а качественно распознающая разговоры с микрофонов на АЗС, то есть речь в сильных шумах. Цель заказчика простая – контролировать, упоминают ли кассиры акции, п...

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

Знакомство с Velociraptor Если такие понятия как DFIR, Threat Hunting, Security Monitoring, для вас не пустой звук, то эта статья будет вам интересна. Я расскажу про утилиту Velociraptor, которая часто помогает мне в работе. К моему удивлению, на Habr даже нет упоминания про нее, попробую это исправи...

Пишем собственный WYSIWYG редактор на основе веб-компонентов и textarea. Часть 1 Всем привет, последние пару месяцев я активно изучаю тему веб-компонентов, собираю и нарабатываю опыт, а затем делюсь своими наработками с другими с целью обменяться опытом, получит новый опыт, фидбек и понять куда двигается разработка в вебе и шагать дальше за новым опытом....

Kotlin-сервер без JVM — реальность? Не секрет, что Kotlin может использоваться для создания всех компонентов FullStack-приложения - от мобильных приложения для Android/iOS и веб-сайтов на Kotlin JS до бэкэнда (например, с использованием Ktor, http4k и micronaut). Но все же многих останавливает от использования...

[Перевод] DatRet: Реализация Tensorflow для табличных данных Мой open-source продукт. Rete neurale per la previsione di Dati tabulari. (it.)Простая реализация архитектуры глубокой нейронной сети для табличных данных с автоматической генерацией слоев и послойным сокращением количества нейронов. С удобством использования, аналогичным к...

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

[Перевод] Как мы обновили старый кластер Elasticsearch на 3 ПБ без простоев. Часть 4 — токенизация и нормализация Прим. переводчика: автор статьи рассказывает, как его команде удалось оптимизировать временные и ресурсные затраты при токенизации текстов в Elasticsearch путем внедрения нормализации похожих символов.Это четвертая часть серии статей об обновлении кластера Elasticsearch...

Human Fall Flat и другие игры в Apple Arcade за март 2023 На старте Apple Arcade была реально надежда, что сервис привлечёт хотя бы инди-разработчиков, которые идут наперекор трендам и создают искусство. С тех пор этот сервис по подписке стал странным подобием Google Play Pass, с интересными инди-проектами, но засильем премиальных ...

Claim-based авторизация на PL/pgSQL Статья о создании супергибкой системы проверки прав к ресурсам на основе клэймов и политик. В свое время был вдохновлен реализацией Claims‑based authorization in ASP.NET Core, но нужно было на Node.js (а теоретически на любую плат...

Это не больно: как мы сделали свою платформу киберучений и научились контейнеризировать всё подряд Два года мы с командой строили платформу киберучений. Мы начали с пары виртуалок c 2 Гб RAM на борту в EVE-NG (причем это была вложенная в VMWare ESXi виртуализация) и домасштабировали до самостоятельной инфраструктуры с контейнеризованными сервисами для обучения по ИБ и воз...

Электрификация сельских районов в Африке: кейс создания солнечного микрогрида Попалась на глаза любопытная статья об электрификации сельских районов в Африке на примере общины с очень выразительным для русского уха названием Йебу (Yebu) [1]. Поскольку это явный пример освоения "неудобий", о которых мы часто пишем в развитие концепции геоклиматических ...

Как подключить российский SSL-сертификат к iOS-приложению Одна из санкций, которая досталась России, — запрет на выдачу и продление SSL-сертификатов. Это приводит к тому, что у некоторых компаний сертификат может протухнуть и сайты перестанут открываться.Основных решений два:Использовать российский Яндекс.Браузер или Атом.Поставить...

API Честный знак как получить ключ сессии Привет habr!Хочу поделиться опытом работы с API системы маркировки товаров «Честный Знак» (ЧЗ) / МДЛП (маркировка лекарственных препаратов), в части выгрузки статистических данных.Не раз сталкивался с интеграцией различных источников данных в аналитические системы, но конкре...

Что под капотом у Leak Canary? LeakCanary – библиотека, позволяющая находить утечки памяти во работы приложения в фоновом режиме. При всем при этом, со стороны клиента ничего делать не нужно. Просто указал либу в зависимостях Gradle, и она сама начинает работать. Естественно инженерное любопытство за...

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

Как бесплатно запустить Windows на Mac M1/M2 (Apple Silicon) В статье описана инструкция по установке Windows внутри MacOS. Читать далее

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

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

Изучаем mergeMap, switchMap, concatMap и exhaustMap Я Angular разработчик. Это моя первая статья и таких я собираюсь написать много. Пришла эта идея мне в голову потому что иногда, пытаясь найти какую-то информацию в интернете о принципах работы какого-либо инструмента разработки, я не нахожу абсолютно ничего. Это либо ненави...

Tutorial по обмену с 1С. Часть третья: Выжимаем максимум из стандарта. Что мы хотели бы знать 1000 проектов назад Всем привет! Я Дина, ведущий разработчик личных кабинетов и ecom-систем в ИНТЕРВОЛГЕ. Мы не делаем тривиальных проектов. Все что я буду описывать ниже – уникальные задачи. Однако очень часто мы решаем их стандартными средствами за счет хитрых трюков и опыта.Disclaimer: «Сайт...

Чем занимается ClickHouse пока мы спим или неожиданный OOM Не смотря на все свое дружелюбие и конструкторную гибкость - ClickHouse временами выглядит, как весьма капризная технология. Одной из таких особенностей, с которой мне довелось столкнуться - стала борьба с внезапным OOM. В данной статье мы вместе с вами попробуем рассмотреть...

Настраиваем QtCreator для полноценного программирования и отладки микроконтроллеров STM32 Привет всем.На данный момент я активно осваиваю разработку ПО для STM32 и хотел бы поделиться моим опытом. Как известно, для STM32 имеется много сред для разработки, однако часть из них, несмотря на удобность, имеют ограничения по использованию в случае пробной версии. Так, ...

ChatGPT. Новая парадигма, новый мир. Часть 1 3 недели назад я написал инструкцию о том как получить доступ к ChatGPT в России. За это время она неожиданно набрала более 130т просмотров, что показывает явный интерес сообщества к этой теме.За последнее время я собрал достаточно много интересной информации вокруг этой тех...

Из FPGA-дизайнера в ASIC: четыре личных истории и анонс курса переподготовки от YADRO Microprocessors Во всем мире и в нашей стране резко возрос интерес к разработке микроэлектроники, ключевым элементом которой являются системы на кристалле. Разработка этого класса устройств требует глубоких специальных знаний и опыта, а специалистов такого профиля в индустрии не хватает. Пр...

Шабашка или фриланс, на чьей стороне ты? С бурным развитием интернета, наверное, никому не нужно объяснять, что такое фриланс? Но ещё каких-то два с небольшим десятка лет назад, когда в нашей «деревне» интернет не укоренился, мы о таком и слыхом не слыхивали. В наше время было простое и понятное всем слово шабаш...

Обход блокировок: настройка сервера XRay для Shadowsocks-2022 и VLESS с XTLS, Websockets и фейковым веб-сайтом Предыдущие статьи серии:"Современные технологии обхода блокировок: V2Ray, XRay, XTLS, Hysteria и все-все-все""Программы-клиенты для протоколов недетектируемого обхода блокировок сайтов: V2Ray/XRay, Clash, Sing-Box, и другие".С протоколами разобрались, с клиентами разобрались...

Взлет и падение Vuetify. Некролог Vuetify - один из самых популярных Material Design фреймворков для Vue, которому недавно исполнилось 6 лет. И 6 января 2023 года его основатель заявил, что проект Vuetify перестал окупаться и он ищет работу. Отсюда - некролог в названии статьи.Статья состоит из шести небольш...

Ямадзаки Сюмпэй: история самого плодовитого японского изобретателя новейшего времени Сюмпэй (иногда встречается написание Шунпей) Ямадзаки — японский изобретатель, родившийся в 1942 году. Он до сих пор управляет своим бизнесом и изобретает до сих пор. Сейчас изобретателю-рекордсмену около 80 лет, но он продолжает развивать свою компанию, следить за современн...

От человекочасов к Story Points и обратно Вне зависимости от методологии разработки ПО, каждая команда сталкивается с этапом планирования и оценки задач. Есть те, кто привык оперировать человекочасами и человекоднями, есть те, кто уверовал в мощь и эффективность оценок в абстрактных величинах, таких как Story Points...

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

Даже Xiaomi не устояла. Компания планирует сократить около 6000 работников, но те вполне довольны объявленными компенсациями Как пишет ресурс ITHome, Xiaomi запланировала серьезное сокращение штата. План компенсаций определяется формулой N+2, то есть речь идет как минимум о трехмесячном выходном пособии. Сокращения затронут все или почти все отделы Xiaomi (в том числе департамент мобильных у...

Как мы создавали мобильное приложение «Х5 Недвижимость», или любовь не с первого касания Привет, Хабр! Я Дмитрий Сыровнев, руководитель команды мобильного приложения «Х5 Недвижимость». Когда я рассказываю, чем я занимаюсь, то люди задаются вопросом: где Х5 Group, а где, собственно, строительство и недвижимость?  Отвечаю: X5 Group – это не только магазины «П...

Цифровой рентген: реверсировал, реверсировал, да и выреверсировал Весной 2022 о заморозке своей деятельности на территории РФ заявили основные мировые производители программного обеспечения для компьютерной томографии (КТ). От "хорошей" жизни нам пришлось запустить проект разработки собственного КТ‑реконструктора совместно с командой ...

Как сделать анимацию с помощью MotionLayout Привет, Хабр! Меня зовут Павел Беловол, я Android-разработчик на проекте онлайн-кинотеатра KION в МТС Digital. Это новая часть сериала о внедрении фичи Autoplay в KION, в которой я расскажу про свой личный опыт работы с MotionLayout на примере продакшн-задачи в KION. Из этой...

Где мы находимся и куда идем? Делаем процесс тестирования прозрачным с Klaros TMS Для руководителя отдела тестирования важно иметь актуальную информацию об используемых тестовых кейсах, временных затратах на их выполнение, ретроспективную статистику о количестве и успешности прохождения ручных тестов (и, в идеальной ситуации, еще и автоматически извлекать...

Ericsson продаёт бизнес в России Ericsson избавляется от дочерней российской компании. Компания сообщила, что новыми владельцами российской дочки Erisson станут её операционные топ-менеджеры. Сделка включает в себя перевод примерно 40 сотрудников российского офиса Ericsson, а также определенных активов...

Доказуемая честность и PoL в казино (и не только) Не так давно я начал интересоваться работой гэмблинг рынка, а именно казино. У многих людей ошибочное мнение о работе онлайн-казино. Многие представляют себе казино как сервис, где людей нагло обманывают, все игры подкручивают и выиграть там нереально, но в этой статье я хоч...

[Перевод] Что ждёт Flutter в будущем О чём говорили на конференции Flutter Forward в Найроби: перевод статьи с комментариями разработчиков Surf. Читать далее

Какие проблемы решает Release Train в мобильной разработке Влияет ли размер приложения и команды на то, как мы его релизим? Давайте представим себе стартап. Проект и команда небольшие. В этом случае обычно не задумываешься о процессе релизов: сделал фичу — зарелизил.А теперь представим большой проект, например, какое-нибудь банковск...

5 библиотек Python для красивого вывода на консоль Независимо от того, создаете ли вы простой скрипт Python или приложение корпоративного уровня, элегантное взаимодействие с консолью избавит вас от надоедливой головной боли при устранении неполадок в будущем.В этой статье мы рассмотрим некоторые библиотеки, которые позволят ...

Удивительные беспроцессорные «текстовые» компьютеры Wang 2200 — мечта писателя конца 70-х В прошлой статье я рассказал об американском изобретателе китайского происхождения Ван Ане, создателе памяти на магнитных сердечниках, который построил с нуля успешный IT-бизнес в США. Самым интересным проектом основанной им компании Wang Laboratories стал специализированн...

[Перевод] В стране потоков — Кафка, часть 2: Поднимаем consumer’ы В предыдущей статье мы обсуждали, как именно работает сторона producer при отправке сообщений, и с учетом данных, хранящихся внутри темы, давайте теперь углубимся в сторону consumer.Цель этой части — охватить следующее:1.Как работает сторона consumer;2.Как работает масштабир...

Эволюция нейросетей от Т9 до ChatGPT: объясняем на простом русском, как работают языковые модели В последнее время нам почти каждый день рассказывают в новостях, какие очередные вершины покорили языковые нейросетки, и почему они уже через месяц совершенно точно оставят лично вас без работы. При этом мало кто понимает – а как вообще нейросети вроде ChatGPT работают ...

Расширяем PostgreSQL с помощью Rust Свободная система управления базами данных PostgreSQL не только предоставляет высокопроизводительный движок для выполнения запросов, но и может быть расширена с помощью расширений, которые могут добавлять новые типы данных (например, для ГИС‑рас...

Тестирование мобильных приложений на Flutter с использованием Python + Appium Тестирование нативных мобильных приложений для Android и iOS обычно обеспечивается библиотеками UiAutomator2 и XCUITest, но сейчас, в связи с появлением мобильных приложений, разработанных с использованием Flutter Framework, использовать их для тестирования становится затруд...

[Перевод] Как Java мусорит за пределами кучи: часть 1, реляционные базы данных Как Java разработчики, мы знакомы с концепцией сборки мусора. Наши приложения постоянно генерируют мусор, и этот мусор тщательно очищается сборщиками CMS, G1, Azul C4 и другими типами сборщиков.Однако история не заканчивается на Java куче. На самом деле, это только...

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

Как мы упростили процесс трудоустройства в Fix Price с помощью создания лендинга и рассылки в мессенджерах Привет, Хабр! Меня зовут Вадим Райский, и я работаю руководителем IT‑проектов для департамента управления магазинами Fix Price. Сегодня поговорим о том, как мы в этом году запустили специальную экосистему для найма сотрудников на работу, что&nbs...

Теория вероятностей в машинном обучении. Часть 1: модель регрессии В данной статье мы подробно рассмотрим вероятностную постановку задачи машинного обучения: что такое распределение данных, дискриминативная модель, i.i.d.-гипотеза и метод максимизации правдоподобия, что такое регрессия Пуассона и регрессия с оценкой уверенности, и как норма...

Hyper-casual. Работа на энтузиазме Можно ли сказать, что Hyper-casual Game появились в 2017 году? Если верить Wikipedia, то да. Именно тогда мобильные сторы заполнили розовые и синие стикмены, нам предлагали выщипывать брови, красить автомобили, подметать улицы и собирать шарики в разном формате. В тот г...

[Перевод] PostgreSQL: настройка и оптимизация производительности. Часть 1 Данная статья посвящена способам повышения производительности PostgreSQL и EDB Postgres Advanced Server (EPAS) с 10 по 13 версии. Мы начнём с аппаратного обеспечения и будем двигаться вверх по стеку, оставив напоследок SQL-запросы.  Читать далее

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

Устройство 64-битных счётчиков транзакций в Postgres Pro Enterprise Эта статья описывает реализацию 64–битных счётчиков транзакций (XID, ксидов) в СУБД Postgres Pro Enterprise, которая создана на основе свободной, опенсорсной объектно–реляционной СУБД Postgres. Она ориентирована на тех, кто имеет практический опыт в работе с СУБД Postgres Pr...

Как получить грант 4 млн. рублей от ФСИ на запуск вашего ИТ стартапа? Наш опыт с детальным разбором заявки Меня зовут Максим Кульгин, и моя компания clickfraud занимается защитой от скликивания контекстной рекламы в «Яндекс.Директ». В августе 2022 года мы получили грант от фонда ФСИ, и я хочу поделиться опытом с детальным разбором нашей заявки в фонд. Так, кажется, еще ...

Как Тарас стал Senior+ из-за CS 1.6 и дедушки с ТЭЦ Основной хард-скилл Тараса Началось всё с дедушки-инженера. Из-за него у Тараса сформировался инженерный же склад ума, а дальше он увлёкся стандартными игрушками для ребёнка с технической родословной: машинками, конструкторами лего, миркоэлектроникой, Ассемблером, разработ...

ATWatch: Долгий путь разработки умных часов на Arduino Привет, меня зовут Артем. Не так давно я спросил Артёма о том, почему бы нам не рассказать о своём проекте, думаю многие смогут подчеркнуть в нашей истории, что-то своё.Проект ещё начинался, когда я был в 9 классе школы. В университете к разработке присоединился мой друг Арт...

Стрейч пленка ручная и машинная: Как выбрать оптимальный вариант для вашего бизнеса Стрейч пленка https://pack-land.ru/strejch-plenka - это один из самых популярных материалов для упаковки грузов. Его используют в различных отраслях, начиная от логистики и заканчивая производством. Существует два основных вида материала - ручная и машинная. В этой статье мы...

Как прошел митап для iOS-разработчиков в Минске Всем привет! Я Александр Дюбкин, в Тинькофф занимаюсь iOS-разработкой. Команда, в которой я работаю, отвечает за разработку фич для мобильного банка — того самого желтого приложения Тинькофф — и приложения Тинькофф Бизнеса. В мобильную разработку у нас вовлечено множество ко...

Как я учусь на разработчика игр в Московском Политехе Меня зовут Айгерим, мне 20 лет. Я студентка Московского политехнического университета на направлении геймдев, сейчас на 3 курсе. Есть много статей про обучение IT-специальностям в разных вузах, но геймдев-направления в России это довол...

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

LSI ключи и что использовать вместо них? Меня зовут Пётр Гришечкин, и я работаю SEO-специалистом в команде проекта “Своё Родное”. В основном я занимаюсь продвижением цифровых продуктов, представленных на платформе, и готов поделиться своими знаниями с читателями Хабра. Вокруг SEO ходит много мифов и легенд. На неко...

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

«Сбер» предоставил технологии компьютерного зрения для встраивания в приложения Команда СберБанка опубликовала набор инструментов SaluteVision Mobile SDK. Как отмечают в пресс-службе, этот SDK позволит разработчиком быстро и легко встраивать системы компьютерного зрения в свои мобильные приложения для Android и iOS.  Иллюстрация: СберБанк Раз...

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

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

Как создать эвристический алгоритм онлайн-мастеринга и получить предупреждение от RIAA Добрый день, меня зовут Сергей. В своей статье я бы хотел осветить тему аудио мастеринга, а именно: автоматизированного онлайн-мастеринга музыки.Я расскажу о своём пути от продюсера психоделического транса до мейнтейнера самой популярной open source библиотеки автоматизирова...

Как я проходил собеседования на Machine Learning Engineer Это статья с 21-ой ссылкой о подготовке к собеседованиям. Я собеседовался на позиции Machine Learning Engineer. Разобрал основные этапы (алгоритмы, machine learning system design, поведенческий этап) и как к ним готовиться. Читать далее

Разработчики King of Septsea сделали отличную игру King of Septsea — с виду очередная мобильная стратегия в сеттинге средневекового фэнтези. Только разработчикам из студии JJWORLD удалось сделать цельный проект, хоть и с F2P-элементами по типу покупок со случайными предметами. Главная цель игроков в King of Septsea — расшир...

Unity UI Toolkit: Быстрый старт Всем привет!В игре может быть множество элементов интерфейса, всплывающих окон и т. д., и когда появится необходимость изменить общий стиль, например цвет кнопки или текста, то придется это менять во всех созданных элементах, если используется старая система UI Canvas - uGUI...

QR-code. Обнаружить и расшифровать. Шаг 1 — Обнаружить Эта статья - первая в цикле статей, в котором мы разберемся с тем, как qr-код устроен, и напишем простенький Qr-детектор и дешифровщик, а также свой собственный генератор qr-кодовИспользовать мы будем python вместе с opencv и numpy. Учитывая, что opencv - кросс-язычная библи...

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

Бардак в main, стандартизация и uber.fx. Как сделать структуру кода понятнее для всех Привет, Хабр! Меня зовут Данила Проценко. Я — Lead Software Architect в «Лаборатории Касперского», занимаюсь архитектурой микросервисов и монолитов на Go. Строгий порядок — залог успешного промышленного программирования. А порядок, в свою очередь, начинается со стандартиза...

Tinkoff Pro Open Source Мы в Тинькофф активно инвестируем в образование. Развиваем Поколение, Финтех, Академию и другие программы. Open source — наглядный способ передать экспертизу на конкретных примерах и дополнительная возможность развивать наши образовательные программы.Открытая разработка инст...

[Перевод] Используем Computer Vision для получения €6,147,455 за ночь во внутриигровой валюте Последние 10 лет я играл в такие игры, как TownsMen 6, Clash of the Clans, SimCity и мою любимую OpenTTD (с открытым исходным кодом!).Попробовав City Island 5, я был раздражен от того, что предметы не накапливались, пока я находился вне игры. У меня может быть самый лучший б...

10 инструментов ИИ с бесплатным тестовым доступом, которые пригодятся в работе В этой статье собрано 10 инструментов на основе искусственного интеллекта, большинство из которых просты в использовании и бесплатны для тестирования.Всем привет! Меня зовут Маруся, я аналитик данных, веду блог в телеграме Аналитика и growth mind-set.Практически все инс...

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

MDM в Android: плюсы, минусы, подводные камни Как только у сотрудника какой-либо компании появляется необходимость выполнять задачи на мобильных устройствах (пусть даже элементарно читать рабочую почту) и, соответственно, получать с них доступ к данным компании, появляются риски. Мобильные устройства (как и все эндпоинт...

Эчар… как много в этом слове Статья об этапах подбора ИТ персонала, глазами кандидата.Вряд ли тут будет что-то новое для большинства читателей, скорее просто легкое чтение и возможность вспомнить свои истории при общении с HR. Читать далее >>

Тонкости C++: итак, вы объявили класс… Во время работы наша команда постоянно сталкивается с некоторыми особенностями языка, которые могут быть неизвестны рядовому C++ программисту. В этой статье мы расскажем о том, как работает, казалось бы, обыденная вещь – forward-декларации классов. Читать далее

Опыт разработки виджетов для Figma. От 0 до 23000 установок за 4 месяца Я дизайнер продукта и имею опыт во front-end разработке. В обычное время я работаю над дизайн системой, прототипами и помогаю команде с техническими вопросами, поэтому любые темы на пересечении дизайна и разработки очень увлекают меня.Почти полгода назад, я обсуждал со своим...

Устанавливаем Kubernetes-платформу Deckhouse в закрытом окружении. Пошаговая инструкция Продолжаем серию статей про установку Deckhouse в разные окружения. Мы уже рассказывали про развертывание в Yandex Cloud. Эта статья посвящена установке платформы в закрытое окружение, когда у машин, на которых разворачивается кластер, нет доступа в Интернет. Читать далее

Если бы Остер раздавал советы автоматизаторам. Часть 2 Всем привет! В статье продолжаю давать вредные советы из области автоматизации: по кодингу, коммуникациям, организации процессов, стандартам, визуализации и т. д. Здесь вы найдёте подробную инструкцию о том, что нужно делать автоматизатору, чтобы усложнить жизнь себе и ...

Лонгрид по полезному чтению в 2023 году: 39 книг, которые помогут писать красивый <код> ≀И эта статья ответит на вопрос, зачем вообще читать книги в 2023 году при великом разнообразии онлайн-курсов. 39 книг-мастридов для разработчиков, которые хотят освежить знания, быть в курсе новых технологий и прокачать свои навыки. Каждое издание из подборки расширяе...

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

Как мы сокращаем время простоя при установке обновлений схемы базы данных. Советы разработчикам Привет! Я работаю в компании Bercut, которая более 20 лет занимается разработкой и поддержкой ПО для операторов сотовой и фиксированной связи. Сегодня я хочу рассказать о наших подходах к сокращению времени простоя продуктивного комплекса при&nb...

Дельта компрессия и квантизация объектов в C# Cтатья затрагивает тему сериализации данных, которые передаются по unreliable каналам.В первую очередь это касается реалтайм игр, которые критичны к сетевым задержкам, имеют активное общение клиента и сервера, например, 10 - 60 раз в секунду и используют UDP протокол. В стат...

Меньше точно не бывает! Делаем вольтметр на ATTINY10 В продолжение к прошлой статье решил пощупать и Attiny10. Ну меньше уже точно ничего нет. Если и есть такое извращение с 4 ногами, я о нем не знаю, точнее не нашел..Тут у нас полноценный МК, в корпусе SOT-23! И задачи на нем решать можно вполне серьезные. Собрав схему на мак...

Как сайты определяют ботов? Деобфускация Akamai Bot Manager 2.0 Akamai Technologies - американская компания, занимающаяся защитой веб-ресурсов от ботов с помощью своего продукта Bot Manager. В её портфолио числятся такие гиганты ритейла, как Nike, Adidas и Asos, для которых особенно важен контроль за ботами, автоматизирующими процесс вык...

Иронии автоматизации Вероятно, один из главных в мире текстов об автоматизации — статья «Ironies of Automation» когнитивного психолога Лизанны Бейнбридж, опубликованная в 1983 году в журнале Automatica. На неё ссылаются более 1800 других академических работ, про неё есть страница в Википедии, её...

RPG в разработке — как создать команду с учётом особенностей ролей Привет! Меня зовут Тимофей, я IT lead в QIWI. Но так было не всегда — например, год назад я в рамках того же продукта, что и сейчас, был продуктовым разработчиком в части бэкенда. Передо мной (так я был старожилом) поставили занятную задачку — собрать новую команду. В этом п...

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

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

Boson — разработка СУБД «с нуля» (часть I) После разработки виртуальной машины и компилятора в рамках хобби прошел год и захотелось попробовать реализовать ёмкий по алгоритмам проект по системному программированию. Каждый разработчик "кровавого" enterprise в своей работе использует СУБД (SQL/NoSQL) и меня всегда искр...

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

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

Пишем FastAPI с нуля на python FastAPI — это современная, быстрая (высокопроизводительная) веб-инфраструктура для создания API-интерфейсов с Python 3.7+ на основе стандартных подсказок типов Python. В этой статье мы рассмотрим как написать его с нуля. Читать далее

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

Оплачиваем покупку через СБП без мобильных приложений Понадобилось мне как-то оплатить один товар в интернет магазине. Среди способов оплаты были Webmoney, qiwi wallet, СБП, а также ворох каких-то малопонятных мне криптовалют. Оплату банковской картой по каким-то причинам продавец не предлагал.Недолго думая я выбрал СБП, ожидая...

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

Приколы с ChatGPT: обмануть или быть обманутым Привет, Хабр! В этой статье я написал про ошибки и приколы, с которыми я столкнулся за пару дней использования ChatGPT. Сразу оговорюсь — таких жёстких примеров, как на картинке, у меня не было. Но были даже более интересные! Читать далее

Как скетчи помогают в работе и жизни: от коммуникации с заказчиком до иллюстративного дневника Привет! Меня зовут Катя Седова, я продуктовый дизайнер и иллюстратор в Тинькофф. Примерно 50% моей работы — создание картинок к клиентским письмам и дайджестам. Рассылки происходят постоянно, поэтому рисовать нужно много и быстро. За год работы у меня появилось понимани...

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

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

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

Интеграция Primefaces в приложение на Spring Boot. Часть 3 — динамическое обновление контента страницы Описывается пример интеграции библиотеки компонентов пользовательского интерфейса Primefaces, построенной на основе фреймворка JavaServer Faces (JSF), в MVC приложение на Spring Boot.Первая частьВторая часть Читать далее

Как добавить Life Activity в существующий проект. Часть I Live Activity был показан Apple на презентации iOS 16 и нового iPhone с Dynamic Island. Обновление доступно только для тех, кто обновил iOS до 16.1. Меня зовут Азиз, я iOS-разработчик в inDrive. В статье расскажу, как мы добавляли Live Activity в наше iOS-приложение. По...

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

STM32 BluePill + RNDIS, или делаем из нехитрых приспособлений троллейбус… Привет, Хабр. Год назад я круто изменил направление своей деятельности с desktop разработчика на программиста микроконтроллеров. Хочу поговорить о том, как прошел этот год, поделиться своими наблюдениями, рассказать в одном месте о чем никто не рассказывает. А, еще и RNDIS н...

Прошивка и отладка STM32 в VSCode под Windows На хабре уже есть немало информации об отладке МК в VSCode на Linux, также было написано как настроить тулчейн для работы под Windows в QT Creator, Eclipse, etc. Пришло и моё время написать похожую, но для VS Code и под Widnows. Инициализация проекта будет проводиться с помо...

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

От треугольника Серпинского до «снежинок». Реализовано на Python От треугольника Серпинского до "снежинок". В этой статье я поделюсь своим опытом построения треугольника Серпинского и расскажу, к чему привели дальнейшие эксперименты с фракталами подобного типа. Реализовано на Python. Читать далее

Размышление об Active Object в контексте Qt6. Часть 2.5 Статья выпущена как дополнение к предыдущей и показывает, как можно сделать Active object, работающий асинхронно в среде Qt, но при этом не использующий события. Читать далее

[Перевод] Введение в архитектуру Greenplum В этой статье поговорим о Greenplum — СУБД, основанной на PostgreSQL. Разберём её общую архитектуру, способы хранения данных, а также перечислим проблемы, с которыми можно столкнуться в ходе эксплуатации. Читать далее

2022. Год из жизни CTO в GameDev Доброго времени, Хабр!Сначала немного представлюсь. Меня зовут Сергей. В IT я уже более 13 лет из них в GameDev более восьми. Так вышло, что до написания статьи на хабр дошел только сейчас. И дошел только благодаря подписчикам моего небольшом канала по разработке игр в teleg...

4 часа недоступности: постмортем падения Dodo IS Вечером пятницы 23 сентября, в самое «горячее» время для Додо Пиццы, развалилась платформа Dodo IS. Приём заказов превратился в тыкву, клиенты и пиццерии 4 часа испытывали проблемы. Это было наше самое крупное падение с 2018-го года как в техническом плане, так и по недополу...

Управляем смартфоном с ПК с помощью приложения Intel Unison Идея не нова. Microsoft уже давно предлагает для подобного использовать фирменное приложение «Связь с телефоном» (Phone Link), которое можно скачать и настроить ещё на этапе установки Windows. Читать полную статью

Fire Force Game делают по аниме «Бригада пылающего пламени» Fire Force Game — мобильная игра в жанре RPG и с аниме-графикой. Она доступна в Японии на iOS и Android, предлагая миссии с пошаговыми боями и гача-систему. Причём разработчики дают 10 бесплатных круток, только большинство персонажей 1-уровневые, поэтому готовьтесь к «реролл...

Как работают text2image модели? Вы, наверное, слышали про dalle-2, midjourney, stable diffusion? Слышали о моделях, которые по тексту генерируют картинку. Совсем недавно они продвинулись настолько, что художники протестуют, закидывая в стоки картинки с призывом запретить AI, а недавно, вообще, в суд подали...

Гусеничное шасси-робот на базе Arduino, часть 1 Дело было к вечеру, делать было нечего. Загорелся я как-то созданием универсальной гусеничной платформы для изучения Tenserflow. Причем хотелось сделать управление через ESP32, которая будет регулировать моторчики, даст в случае желание управление через браузер в локальной с...

[Перевод] TCP и UDP, или Два столпа Интернета В предыдущей статье мы обсудили иерархию Интернета, разницу между средами передачи данных и путь запроса от компьютера пользователя до сервера, расположенного на другом конце земного шара. В этой поднимемся на несколько уровней выше, чтобы разобрать каким «языком» пользуются...

Учитель и панк: история Алексея Дрозда, начИБ «СёрчИнформ» Продолжаем серию постов о наших сотрудниках. Под Новый год решили рассказать про одного из самых заметных наших коллег – Алексее Дрозде (aka @labyrinth). Вы знаете его, если приходите к нам на вебинары и Road Show, учитесь в нашем УЦ, читаете наш блог на Habr. В общем, много...

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

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

[Перевод] Swift-код в качестве пользовательских команд LLDB Если я спрошу, какую команду LLDB вы используете чаще всего, то я почти уверен, что вы, как и большинство iOS-разработчиков, ответите po. Но знали ли вы, что вы можете определить свою собственную команду LLDB, используя только Swift-код?В этой статье я покажу вам, что н...

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

Home Assistant: Яндекс Алиса говорит, какие окна у вас не закрыты В этой статье разберемся, как в Home Assistant составить красивую фразу на основе статусов сенсоров и передать её в TTS на примере колонки Яндекс. Читать далее

Количество партиций в Spark DataFrame, DataSet на основе Relational Data Base table В прошлой статье мы рассмотрели количество партиций, которое по умолчанию создается Apache Spark при инициализации DataFrame, DataSet. В текущей статье продолжим рассматривать количество партиций у Spark DataFrame и DataSet, созданных на основе таблицы в Relational Database....

Языки программирования как зеркало IT-столпотворения. Часть II В предыдущей статье мы подробно рассказали о первых попытках человечества запатентовать языки программирования и о первых созданных ЭВМ. В этой речь пойдет о современности.  Читать далее

Градостроительную стратегию Sunshine Island запустили в ряде стран Sunshine Island — градостроительная стратегия на смартфоны. Пока мы говорим о версии на Android, она доступна в Индии и, вероятно, других странах ЮВА. В ней приятная мультяшная графика и понятное обучение. По сути вы должны построить городок на тропическом архипелаге. Это ну...

Пишем API автотесты на TypeScript + Playwright В данной статье мы разберем, как писать API автотесты на языке TypeScript + Playwright. Читать далее

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

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

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

Подводим итоги 2022 года Привет, друзья! На календаре 29 декабря, а значит самое время подвести итоги уходящего года. В этой статье мы поговорим лишь о нескольких событиях и анонсах от Microsoft, которые особенно запомнились нам по тем или иным причинам. Конечно, интересного было много, и в коммент...

RTK query, что мы от него хотим и почему он вам очень нужен Redux Toolkit Query — это мощный инструмент для взаимодействия с API, который из коробки реализует такие полезные фишки, как отображение состояния загрузки, кэширование, дедупликацию запросов, полинг, ревалидацию при различных условиях, а также весьма удобна в использования ...

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

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

Интеграция Primefaces в приложение на Spring Boot. Часть 6 — Комбинирование компонентов для вывода сложных данных Описывается пример интеграции библиотеки компонентов пользовательского интерфейса Primefaces, построенной на основе фреймворка JavaServer Faces (JSF), в MVC приложение на Spring Boot.Первая часть | Вторая часть | Третья частьЧетвертая часть | Пятая часть Читать далее

Часть 2. Управление знаниями в Obsidian. Базовый рабочий процесс. Журнал. Источники и их библиотеки. Пример В этой статье будет показано как можно начать организовывать свою базу знаний в Obsidian, отталкиваясь от источников. В статье будет разобрано какие стоит использовать папки и теги; как создать свою первую точку входа в систему. Также будет уделено внимание способу ведению ж...

Telegram WebApps. Как встроить веб-приложения в чат-бота? Относительно недавно команда Telegram выпустила обновление, с которым появилась возможность встраивать в мессенджер веб-приложения. Эта статья — обзор основных моментов внедрения веб-приложениий в телеграм-ботов. Читать далее

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

[Перевод] Jenkins Scripted Pipeline: как использовать «Pipeline-as-code» — принцип, который позволяет Jenkins обрабатывать пайплайны как обычные файлы. Существует два способа описания пайплайнов: скриптовый и декларативный. В этой статье поговорим о Jenkins Scripted Pipeline: проанализируем его структуру и разберём варианты исп...

Как я написал книгу по Java Статья о том, как я написал и полностью довёл до издания мою первую книгу по Java, про что эта книга, какие у неё особенности и где можно её купить. Приводится список глав с кратким описанием их содержания. Читать далее

English Tenses — моё представление времён в английском языке Всем привет! Сегодня я хочу представить своё виденье времен в английском языке, а также представить свою диаграмму по изучению и применению на практике данных времен. Сразу хочу отметить, что я не являюсь педагогом и у меня вообще нет никакого ни лингвистического, ни педаго...

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

Microsoft напоминает всем о Windows 11, поскольку приближается дата окончания поддержки Windows 10 21H2 13 июня 2023 года редакции Windows 10 Home, Pro, Pro Education и Pro for Workstations версии 21H2 достигнут окончания срока обслуживания. Предстоящее обновление безопасности, которое будет выпущено 13 июня 2023 года, станет последним доступным обновлением для этой версии. По...

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

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

Почему IT такое, какое оно есть Навеяно мыслями после прочтение замечательной статьи "Гори это ИТ синим пламенем" - https://habr.com/ru/post/707230/ Вспомните себя в школьные или студенческие годы, когда всё свободное время вы посвящали своему любимому делу - программированию. Садясь утром за компьютер, то...

[Перевод] Starting Electronics: руководство по веб-серверам на Arduino. Часть 4. Отображение состояния кнопки на веб-странице От переводчика. В этой части руководства автор собирает ещё одну часть пазла и объясняет каким образом можно отображать состояние кнопки на веб-странице. Разумеется, это не обязательно должна быть кнопка, это может быть переключатель, джампер, контакты реле или что-то подо...

Как создать сообщество продактов в ИТ-компании. Опыт МойОфис C 2013 года МойОфис занимается разработкой технологически сложных продуктов. В связи с этим у нас изначально сложилась сильная культура разработки (research and development) — по сути, фундамент компании. А поскольку линейка наших продуктов — от офисных редакторов до почтовы...

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

Замахнемся на гипотезу Коллаца Она же проблема 3n+1. Это, наверное, самая сложная проблема с самой простой формулировкой — условие может понять и ребенок. А вот сложность самой проблемы такова, что великий математик Эрдош сказал, что «математика еще не готова к решению п...

Конструктор для embedded-разработчика В статье я расскажу о своей попытке создать удобный и красивый модульный конструктив для настольного прототипирования микроконтроллерных устройств Читать далее

[Перевод] Как ускорить работу PostgreSQL В статье рассказываем, как оптимизировать базу данных PostgreSQL на примере Linux на IBM Z. Опираясь на представленные примеры, вы шаг за шагом узнаете, какие опции и параметры конфигурации улучшат установку PostgreSQL с точки зрения: Читать далее

Если бы Остер раздавал советы автоматизаторам. Часть 1 Привет, Хабр! Меня зовут Мария Снопок, я отвечаю за автоматизацию тестирования на Python в X5 Tech. Я, конечно, не Остер, но могу дать с десяток вредных советов из области автоматизации. В частности, о том, как испортить жизнь себе и окружающим. В статье я собрала вредн...

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

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

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

Четыре причины, почему плавание полезно для здоровья Если вы хотите поддерживать себя в форме, но не любите тренажёрные залы, то попробуйте походить на плавание. У этого вида деятельности множество преимуществ для здоровья.

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

Binance на 8 часов приостановил вывод стейблкоинов USDC с клиентских счетов Полтвиттера подсели на измену в ожидании очередного банкротства – но самые панические опасения, похоже, не подтвердились. Читать далее

Как настроить Gitlab CI/CD для Android и Firebase App Distribution для доставки сборок Привет, меня зовут Антон Рябых, я технический директор компании Doubletapp, и я расскажу, как реализовать сборку Android-приложений на Gitlab CI/CD с последующей загрузкой в Firebase App Distribution для удобной доставки.Это позволит нам:• автоматически собирать сборки на к...

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

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

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

[Перевод] Создание базовой сети 5G с Open5GS и UERANSIM Добрый день, уважаемые хабровчане!Сегодня и в последующие дни я сделаю перевод статей о развертывании архитектуры сетей 5G для дальнейшего ее изучения. Цель этой статьи - показать, что самые передовые технологии доступны всем и каждому, и что будущее можно создавать своими р...

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

Технологии, изменившие музыку. Часть 1: запись Эта статья — первая из цикла, в котором мы рассмотрим технологии, изменившие музыкальный мир второй половины 20-го века. В первой части мы поговорим про запись музыки. Если разобраться, отсутствие этих технологий столетия назад — подлинная трагедия человечества. Ведь мы нико...

Редкий чистокровный американец: Palm Treo 680. Делаем свой аккумулятор из подручных средств Если сейчас вспомнить на каких платформах работали мобилки лет эдак 15 назад, то в голову приходит сразу несколько вариантов: Nokia S40, Nokia S60, Windows Mobile/PPC 2003, кое-где OpenMoko. Но был ещё пятый, не менее известный игрок на рынке, который на данный момент считае...

И самые лучшие книги они в рюкзаках хранят… В этом топике продолжим тему решения криптографических загадок с MysteryTwister. Ранее уже были опубликованы статьи навеянные задачами с этого ресурса («Угнать SIGABA за 24 часа», часть 1, часть 2). На этот раз возьмём задачу, основанную на классической «задаче о рюкзаке». А...

Выигрышные стратегии 2023 для предпринимателей. 9 инструментов в управлении бизнесом в нестабильности На примере реальных кейсов действующих предпринимателей разберем: Создание мощной стратегии развития, которая не ляжет "в стол" Управление будущим. План-действие - результат за 60 дней. Как внедрить изменения и не убить компанию Смертельные ошибки предпринимателя в ус...

Сколько я заработал на Яндекс играх? Моя история выпуска игры Добрый день, Игроделы. Я InterestingPerson. В этой статье я опишу как создал свою игру и залил её на Яндекс. Читать далее

[Перевод] 5 лайфхаков Python, которые сделают ваш код более читабельным и элегантным Привет, Хабр! В этой статье я продемонстрирую 5 трюков Python на понятных для новичков примерах, которые помогут вам писать более элегантный Python код в вашей повседневной работе. Читать далее

[Перевод] Argo Rollouts с примерами Что такое Argo Rollouts? Это контроллер Kubernetes и набор CRD для дополнительных возможностей развёртывания — сине-зелёное, канареечное, прогрессивное, анализ канареечного развёртывания и экспериментирование.В этой статье поговорим о продвинутых возможностях развёртыва...

Универсальный VPN с WireGuard, MikroTik и Keenetic В данной статье я поделюсь опытом и конфигами для построения универсального семейного VPN - как для конечных потребителей, так и для организации сетевого взаимодействия между дачей и квартирой. Читать далее

Docs as Code для художественной литературы. Делаем творческий сайт ребенка с помощью MkDocs Docs as Сode — подход к работе с текстами, подразумевающий написание текста как кода: в простом текстовом редакторе или IDE; с использованием системы контроля версий; с CI / CD / Code Review. В настоящее время Docs as Code широко применяется при работе с технической докум...

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

Всё о визах в Таиланд в 2023 году От “А” до “Я” о визах в Таиланд: виды, стоимость, нюансы. Всем привет! Я – Женя, как-то я прилетела в отпуск в Таиланд и осталась тут жить. За это время я делала 3 визы и сейчас в процессе получения 4 – Elite visa. В статье расскажу обо всех тонкостях, связанных с получ...

Unity 2022.2 продолжает интеграцию async await В Unity 2022.2 был сделан ещё один небольшой шаг в сторону поддержки async-await, анонсированный еще в мае 2022 года в статье https://blog.unity.com/technology/unity-and-net-whats-next. В UnityEngine.MonoBehaviour было добавлено свойство destroyCancellationToken, которое поз...

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

Паттерны отказоустойчивости приложений в Kubernetes Балансировщики падают, контроллеры зависают, а дата-центры атакуют экскаваторы. Это нормальная история. Мы живём в мире, где нет ничего надёжного на 100 %, а любой бит в планке оперативной памяти может внезапно перещёлкнуться из-за пролетевшей космической частицы. Другое де...

DBA: хранение списков — таблица, массив, строка? Достаточно часто при проектировании схемы БД возникает задача сохранить по основной сущности некоторый набор простых второстепенных данных.Например, это могут быть ФИО сотрудников, принимающих участие во встрече, список приложенных к сообщению файлов или перечень отгружаемы...

Ускорение инференса модели BERT с помощью ONNX и ONNX Runtime на примере решения задачи классификации текста В статье на примере определения интента по фразе клиента, полученной в текстовом виде показаны подходы для решения поставленной задачи, выбор метрик и моделей.Сделан обзор на актуальные подходы для ускорения работы нейронных сетей, представлены библиотеки ONNX и ONNX Runtime...

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

Работа с контейнерами в Minikube Про Kubernetes написано огромное количество статей. Установка, настройка, мониторинг и безопасность все эти аспекты рассматриваются достаточно подробно. При этом, отдельным пунктом идет создание и настройка контейнеров. И если для решения глобальных задач  администриров...

Tesla была вынуждена вернуть круглый руль в салон Model S и Model X Им проще управлять машиной, чем штурвалом.

[Перевод] Основы Интернета Есть такая интересная книга — «High Performance Browser Networking» Ильи Григорика, в которой описаны основы работы сетей и способы оптимизации передачи данных. В этой книге автор пишет про CDN следующее:Сервисы по доставке контента (CDN) приносят много пользы, но основаны о...

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

Дизайн. С нуля до миддла Привет!Меня зовут Ксюша, мне 29 лет и я продуктовый дизайнер в Константе.В этой статье я расскажу о том, с чего начался мой путь в дизайне и постараюсь дать несколько полезных советов тем, кто только начинает. Читать далее

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

IT's Tinkoff QA Meetup На связи команда перфоманс-тестинга. Нам важно развитие профессиональных стандартов и профессионального комьюнити. В конце октября мы провели митап на тему нагрузочного тестирования. В статье расскажем про доклады спикеров и дадим ссылки на все материалы.На митапе обсудили, ...

Лабиринты из линий: превращаем сложный сценарий в понятную схему на языке ДРАКОН Сценарии для чат-ботов обычно создаются в виде блок-схем. Это удобно для проектирования — понятно, за какой репликой следует ответ и что происходит дальше. Но чтобы разобраться в схеме, команда тратит десятки часов: при больших сценариях результат выглядит крайне запутанным ...

MDM в ритейле: как сохранить производительность без западных решений НИИ СОКБ Центр разработки разрабатывает и развивает отечественную платформу управления мобильными устройствами UEM SafeMobile. Традиционно российский ритейл использовал зарубежные MDM-решения, но в 2022 году обслуживание клиентов на территории России было прекращено. Примене...

Ставка на реалистичность: Яндекс представил сверхподробные «Яндекс Карты» нового поколения Команда Яндекса на ежегодной конференции YaC 2022 (Yet another Conference) представила новое поколение своего фирменного картографического сервиса.  Главной особенностью новых «Яндекс Карт» стала их повышенная точность и детализация. На картах в п...

Техноблогер аргументированно доказал и показал, как гравитация выводит из строя PlayStation 5 Переверните свою PlayStation 5 на бок пока не поздно, если хотите сохранить ее на долгие годы

[Перевод] Обновление Flutter 3.7: перевод официального релиза и комментарии Улучшенная поддержка Material 3, обновления DevTools, новые виджеты – Google представил очередное обновление кроссплатформенного фреймворка.По традиции, команда Flutter-разработчиков Friflex делится первым переводом официального релиза новой версии фреймворка с комментариями...

Electronic Arts отменила в 2010х Dragon Age Mobile и Dante's Inferno Mobile Мобильные геймеры с теплотой в душе вспоминают Dead Space Mobile. В то время было ощущение, что крупные издатели будут переносить свои франшизы и делать их премиальными, хоть и в ущерб доходам из-за пиратства. И как пишет Stopgame, Electronic Arts не хотела останавливаться т...

Погнался за девушкой, а стал middle-разработчиком Привет Хабр! В этой статье хочу рассказать о своем опыте обучения на fullstack-разработчика и поделиться лайфхаками для поиска работы в IT как в России, так и за рубежом. Я middle-разработчик в компании SimpleOne – это ESM-платформа для автоматизации бизнес-процессов. З...

Астронавты SpaceX с помощью мобильных приложений будут учиться оказывать медицинскую помощь Обучающую программу на мобильной платформе создала игровая фирма Level Ex

Tutorial по обмену с 1С. Часть пятая: Наш опыт настройки 1000 и 1 обмена В своей предыдущей статье я начала раскрывать тему того, как правильно настраивать обмен между крупными сайтами и B2B-системами на Битрикс с системами учета 1С:Предприятие. Если еще не читали — посмотрите, будет полезно, типовой модуль обмена многое умеет, а то, что не ...

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

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

Часы реального времени — RTC (real time clock) на одноплатном компьютере. На примере Repka Pi 3 — аналоге Raspberry Pi 3 Эта статья посвящена решению задачи добавления часов реального времени на примере конкретных и широко доступных модулей для RTC и на примере одного конкретного подхода к реализации и алгоритму работы и является скорее примером, демонстрирующим общий принц...

Опыт экспертной оценки ответов ChatGPT в одной из профессиональных сфер деятельности Всем уже изрядно надоели статьи про ChatGPT. Но если вам интересна тема независимых "лабораторных" исследований возможностей современных нейросетей в специализированных областях, представляю результаты такого исследования. Автор задал ChatGPT 100 вопросов в сфере общих знан...

Что такое фаззинг и зачем он нужен? Всем привет! Меня зовут Кирилл, я старший разработчик в группе «Полигоны и ограничения доставки» в Ozon. Cегодня я расскажу про фаззинг, встроенный в Go: что это такое, зачем он нужен в разработке программного обеспечения и как с его помощью найти баг в дикой природе open-so...

[Перевод] Осваиваем TypeScript: 21 лучшая практика при написании кода TypeScript является популярным открытым языком программирования, идеально подходящим для современной разработки. За счёт своей продвинутой системы типов он позволяет писать более надёжный, обслуживаемый и масштабируемый код. Однако, чтобы задействовать весь потенциал этого ...

Превратности диспетчеризации в Swift Всем привет, меня зовут Сергей, я работаю в компании Joy Dev в должности iOS TeamLead. Эта статья - моя “проба пера” на Хабре. В ней, вместе с обзором видов диспетчеризации в Swift, мы рассмотрим несколько примеров, когда реализация методов в extension может вести себя неожи...

Маэстро: как виртуальные ассистенты Салют превращают текст в музыку 2022 год войдет в историю как год прорыва генеративных нейронных технологий. Такие модели, как Midjourney, Stable Diffusion, DALL·E 2, Imagen и их аналоги показали нам, что нейронная сеть по обычному текстовому описанию может создавать картины, не уступающие произведениям та...

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

Декомпозиция систем по ограниченным контекстам DDD — глубокое погружение "Отдайте этот функционал в другую системы - он относится к ним" - ворчал мой собеседник. Ему с пылом отвечали: "Так быть не должно. Мы сами должны его сделать!" Спор грозил затянуться до вечера. Ни одна из сторон не могла привести ни одного настоящего аргумента, почему новый...

Как мы проблемы UI в виджетах решали Меня зовут Алексей Чернякович, я занимаюсь разработкой и поддержкой Android App Widgets в мобильном банке Тинькофф. Сейчас у нас работает три виджета. Несмотря на относительную простоту, они довольно популярны у пользователей — более 50 тысяч использований в месяц. Расскажу,...

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

Распространять жизнь по Вселенной предложили с помощью комет Можем ли мы послать на открытые далекие планеты кометы и засеять их земной жизнью? И если мы сможем это сделать, то стоит ли? Именно этот вопрос рассматривается в новой научной статье в журнале Astrobiology.

Работаем с Zigbee-устройствами через Zigbee2mqtt и Node-RED В первой статье «Облачный умный дом: что нужно знать, чтобы избежать проблем» я рассмотрел преимущества и недостатки облачных решений, а также проблемы, с которыми за последние месяцы пришлось столкнуться пользователям разных облаков. Затем я перешел к практике: приобрел нес...

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

MedBench: NLP-задачи в медицине, модели и методы их решения Привет, Хабр! Меня зовут Даниил Погуляка. Я студент четвертого курса МГТУ им. Н.Э. Баумана, факультета "Информатика, искусственный интеллект и системы управления". Уже некоторое время я занимаюсь изучением методов машинного обучения, в частности, касающихся автоматической об...

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

«Хакер»: Как мы с DALL-E 2 делали картинки к статьям DALL-E 2 — нейросеть, которая рисует картинки по текстовому запросу. Гулявшие в этом году примеры работы с ней просто поражают: иногда она рисует, как настоящий художник, и еще и предлагает варианты на выбор! С августа этого года мы периодически использовали DALL-E 2, чтобы ...

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

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