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

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

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

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

Проецирование вершин графа в векторное пространство. Часть 2. Марковская цепь и Word2Vec И снова здравствуйте! Меня зовут Илья Котов, я Data Scientist в Сбере, участник профессионального сообщества NTA. Эта статья — вторая часть небольшого цикла, посвящённого алгоритмам вложений вершин графа в векторное пространство. Сегодня рассмотрим главную идею алгоритмов, о...

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

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

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

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

Geb Framework для автотестов Добрый день, коллеги. Один из самых известных и популярных фреймворков для написания автотестов - это Selenium. У этого фреймворка множество плюсов и возможностей, но в то же время есть некоторые неудобства в конфигурации, настройке и написании тестов. Поэтому появились фрей...

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

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

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

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

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

Смерть или эволюция. Что ждёт программирование в будущем? Или ещё одна статья про ChatGPT. Этот чат-бот с ИИ пишет код на многих языках программирования, оптимизирует код, конвертирует код с одного языка программирования на другой, пишет скрипты с нуля и т. д. Хотя ChatGPT вряд ли когда-нибудь полноценно заменит инженера-программи...

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

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

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

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

Разворачиваем Kubernetes-платформу Deckhouse в Yandex Cloud Платформу Deckhouse можно устанавливать на виртуальные машины облачных провайдеров, на bare metal-серверы, в закрытый контур и не только. В статье рассмотрим вариант установки Deckhouse в Yandex Cloud. А чтобы убедиться, что все внутренние ресурсы и компоненты работают ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Топ 7 самых популярных игр для Steam Deck по статистике Valve Крупная игровая корпорация Valve, особо известная проектами Dota 2 и CSGO, отчиталась перед пользователями своего онлайн-сервиса Steam о 20-и самых популярных играх, которые запускают на портативной игровой консоли Steam Deck. В статье чуть более подробно рассмотрены первые ...

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

Anycubic Kobra Go. Обзор продолжения линейки Всем доброго времени суток и с наступившими праздниками.Речь в статье пойдет о новом (для меня) 3d принтере Anycubic Kobra Go. В следующей статье расскажу о его более совершенной модели Kobra Neo. Пока приступимс. Цена принтера варьируется в районе 15т.р. в зависимости от ку...

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

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

Интеграция с ЕСИА для .Net: запутаннее, чем кажется Передо мной стояла задача по интеграции нашего сервиса с госуслугами. Казалось ничего сложного не предстоит, но учитывая что наш сервис базируется на технологии ASP.NET всё было не так оптимистично. В начале были поиски.. много поисков, которые привели к множеству разрозненн...

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

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

Как я организовал продажу электронной версии Книги нормального фрилансера и с какими трудностями столкнулся Я написал Книгу нормального фрилансера. В ней поделился опытом работы проектировщиком (UX‑дизайнером) с 2006 года по сегодняшний день. На момент написания этой статьи с книгой познакомилось не меньше 2 000 человек. Десятки положительны...

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

Большое сравнение нейросетей Привет, меня зовут Юля, 85GB и я веду свой канал по нейронкамВ этой статье я рассмотрю по различным параметрам графические нейронки: DALL-E 2, Midjourney, Stable Diffusion, Кандинский и Шедеврум. Постараюсь разложить всё максимально чётко и ёмко, дать оценку по каждому блоку...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ТОП-10 экспортеров для Prometheus 2023 Статья Основы мониторинга (обзор Prometheus и Grafana) оборвалась на самом интересном месте. Автор предложил искать и использовать актуальные экспортеры, а читатель такой – окей, где референс? Что ж, давайте рассмотрим топ-10 наиболее полезных экспортеров на начало 2023 года...

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

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

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

Основы мониторинга (обзор Prometheus и Grafana) Мониторинг сегодня – фактически обязательная «часть программы» для компаний любых размеров. В данной статье мы попробуем разобраться в многообразии программного обеспечения для мониторинга и рассмотрим подробнее одно из популярных решений – систему на основе Prometheus...

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

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

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

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

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

[Перевод] Управление заголовками HTTP в Joomla 4 (часть 1) Эта статья - первая часть перевода статьи Joomla’s New HTTP Headers Plugin For J4 из майского номера (2022) Joomla Community Magazine. Статья рассчитана на широкий круг читателей с разными уровнями компетенций, поэтому опытным вебмастерам и разработчикам имеет смысл пропусти...

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

Миграция Postgrespro с Centos7 на AlmaLinux8. Как бонус — пара седых волос В статье описывается один из способов обновления дистибутива операционной системы с работающим кластером баз данных Postgres Pro Standard версии 11. В дальнейшем, для краткости кластер баз данных Postgres Pro Standard 11 будем называть Postgrespro, Centos7 - Centos, а AlmaLi...

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

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

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

Где работать в IT в 2022: Astra Linux Наша рубрика «Где работать в IT» — это интервью с интересными айти-компаниями, в которых они делятся подробностями о процессах своей работы. Представители индустрии отвечают на вопросы о найме, условиях, командах и технологиях. В этом выпуске мы расскажем вам об Astra L...

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

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

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

Как пользоваться CSI Provider: доставляем секреты из Vault в Kubernetes Добрый день, Хабр! Мы — Михаил Панов и Евгений Прудченко, DevOps‑инженеры из команды МТС Digital, работаем на проекте External WebSSO. Мы занимаемся внедрением DevOps практик и инструментов в рамках нашего проекта. В этой статье расскажем о инте...

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

[recovery mode] Jenkins pipelines с Groovy Добрый день, коллеги. Jenkins является одной из самых популярных систем CI/CD, которая применяется для построения пайплайнов сборки и доставки.Jenkins поддерживает построение пайплайнов на основе Groovy скриптов. Использование Groovy дает возможность очень гибко настраивать ...

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

Анатомия игры: строение файловой системы на примере Elden ring и не только Добрый день, уважаемые хабражители. С вами снова Людмила Хигерович. Но сегодня мы не будем говорить непосредственно о 3D-модельках и тонкостях моделирования. Вместо этого немного отвлечемся и познакомимся с устройством архивов одной из самых популярных игр этого года и ном...

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

Темная тема = шрифтовой ад / Решение В предыдущей статье я подробно разобрал проблемы связанные со шрифтами для темной темы и причины их актуальности. В данном материале смотрим на то, какие есть решения и что предлагает индустрия. + figma файл с адаптированным мной под темную тему стандартным текстовым набором...

Кейсы разметки в CVAT #1: найди отличия Привет, дорогие читатели! Меня зовут Алина, я работаю операционным менеджером в компании Training Data, которая занимается сбором и разметкой данных. Я веду проекты по разметке, а еще благодаря знанию python пишу скрипты для автоматизации работы своей команды. У меня накопил...

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

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

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

Использование скриптов на языке Python в Платформе nanoCAD 23 Рассмотрим действия, необходимые для включения поддержки скриптов на языке Python в Платформе nanoCAD. В статье описана процедура настройки расширения Python.AXScript.2, а также приведены примеры использования команд PY и ‑PY. Пример скрипта использу...

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

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

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

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

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

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

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

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

Как снять данные с весового модуля со своей спецификацией протокола передачи данных и отправить на MQTT сервер Данная статья написана для тех кто на начальном уровне знает Python и немного разбирается в АСУ ТП. Задача достаточно распространенная, надо взять данные со старого, со своей специфичной реализацией протокола оборудования и перевести ее в такой вид, что бы ее можно было ...

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

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

Программный рендер в стиле игры Doom Расскажу о небольшом домашнем проекте по написанию программного рендера. Всё началось со случайного видео на Youtube с записью геймплея игры Doom (93 года). Появилась идея сделать похожий рендер на С++ без использования библиотек. В статье описаны шаги его разработки. В конц...

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

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

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

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

Сравниваем инструменты мониторинга IT-инфраструктуры Zabbix, Icinga, Prometheus Инструменты мониторинга IT-инфраструктуры позволяют полностью отслеживать ее состояние: собирать данные, анализировать и визуализировать их, оповещать о сбоях и т.д. В этой статье рассмотрим платформы Zabbix, Icinga и Prometheus. Разберем их UI, архитектуру, принципы сбора м...

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

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

Математическая продлёнка. Из чего сделаны Пифагоровы штаны Поводом для написания этой заметки послужила новость, облетевшая мир 18 марта этого года: две школьницы из Нового Орлеана, Кальцея Джонсон и Не`Кия Джексон «впервые доказали теорему Пифагора», опираясь на теорему синусов. В России эту новость встретили с иронией и стёбом, но...

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

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

Баланс в играх или как достичь недостижимой цели? Как думаете, что должно быть в каждой игре? На что чаще всего жалуются пользователи? Что может превратить хороший проект в мусор? Что, как говорится, сложно найти, легко поломать и невозможно довести до идеала? И ответ на все это будет игровой БАЛАНС! Да, баланс – ...

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

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

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

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

SQL backend или как помочь BI работать с BigData Привет, Хабр! В этом посте мы поговорим о том, как происходит подключение к внешней СУБД для BI-платформы Visiology, а также разберем ситуации, когда это действительно нужно. Под катом — подробный разбор возможностей SQL backend, которым может воспользоваться сегодня фактиче...

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

Как мы ищем документы в Naumen Disk или еще один вариант организации FTS В процессе работы над проектом мы рассмотрели различные способы организации Full Text Search (FTS) по файлам. И… отказались от них в пользу своего решения, которое базируется на стандартных методах. В статье я опишу путь построения полнотекстового поиска по файлам для веб пр...

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

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

Патентный анализ аддитивных технологий (3D-печати) в России за последние 5 лет. Часть вторая В первой части мы подробно проанализировали патенты на изобретения, касающиеся 3D-печати. Теперь рассмотрим патенты на полезные модели, свидетельства на программы ЭВМ и базы данных, выданные в России.  Читать далее

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

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

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

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

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

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

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

Искусство типизации: TypeScript Utility Types Что вы чувствуете от познания нового? За себя скажу, что в такие моменты просветления меня переполняет неподдельная детская радость от свершившегося открытия. Жаль, что этих моментов становится всё меньше. К чему я это? Когда мне в голову мне пришла мысль о написании статьи ...

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

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

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

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

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

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

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

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

Использование методов А/Б тестирования. Решение практического кейса в Python Привет, Хабр! В данной статье будет рассмотрено применение логистической регрессии, причинного случайного леса (Causal Random Forest), метода CUPED для оценки изменения целевой переменной в Python при проведении А/Б тестов. Основное внимание будет уделено практике, теоретиче...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Как ускорить сайт на WordPress за 15 шагов Оптимизация скорости сайта на WordPress — одна из тех тем, которые, казалось бы «перекопаны» вдоль и поперек, но продолжают вызывать постоянный интерес. И, если задуматься, это совсем неудивительно. WP остается самой популярной CMS, на которой работает более 43% сайтов. Техн...

Компилируем быстрые консольные .exe приложения на PHP 8.1 в 2023 году, а почему бы и нет? С каждым релизом PHP становится всё быстрее, а при включении JIT (Just-In-Time) компиляции, достигает почти отметок того же C. У многих в своё время, наверное, было желание легкого написание консольных и оконных приложений. Ребята рунета иногда писали незаменимые приложени...

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

Сегментация деталей корпуса автомобиля: от разметки до сглаживания контуров Добрый день, Хабр! Меня зовут Арсений Рылов. Я работаю ведущим специалистом по анализу и обработке данных в компании “Финолаб” и сегодня снова речь пойдет об автомобилях, нейросетях и инновационных решениях.В нашем блоге мы уже рассказывали о сервисе дистанционной оценки тех...

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

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

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

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

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

[Перевод] Ansible: 30 самых важных модулей для DevOps-профессионалов (часть 1) Модули – это дискретные единицы кода, которые можно запускать с помощью командной строки или с помощью плейбука для того, чтобы вносить определенные изменения в целевой узел или собирать с него информацию. Ansible реализует каждый модуль на удалённом целевом узле, а также со...

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

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

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

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

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

Эвристики Нильсена – личный опыт, ошибки и находки Привет. Меня зовут Сергей Кардашев. Прошедшие три года я работал менеджером по продуктам и инструментам управления данными в Tele2. До этого много лет был продакт-дизайнером и UI/UX дизайнером. В этой статье я не просто пересказываю принципы построения интерфейсов, а делюсь ...

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

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

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

PostgreSQL 16: Часть 3 или Коммитфест 2022-11 Продолжаем следить за новинками будущей 16-й версии. В начале декабря завершился третий коммитфест и вот его результаты. Самое интересное из первых коммитфестов можно прочитать в предыдущих статьях серии: 2022-07, 2022-09. Читать дальше →

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

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

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

[recovery mode] Tensorflow: Используем трансферное обучение для классификации пневмонии и оптимизируем нашу модель Привет, Хабр! На связи Рустем, IBM Senior DevOps Engineer & Integration Architect.Сегодня мы будем работать с открытым набором данных по рентгенографии грудной клетки которые, использовали для этого исследования, с предварительно обученной моделью MobileNet_v2 для класси...

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

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

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

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

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

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

Self-Supervised Learning. Обучение на изображении и его аугментациях Ранее мы разобрали, что за зверь такой SSL и какой линейкой его можно померять. Также окунулись в историческое прошлое SSL методов глубокой древности (4 года назад

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

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

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

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

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

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

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

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

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

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

Создание «Google Sheets» через Websockets на Node.js ВведениеВсем привет! Меня зовут Герман Панов и в этой статье мы разработаем табличный редактор - аналог Google Sheets (в упрощенном виде), работающий на основе вебсокетов, чтобы познакомиться со способами применения этой технологии в браузерах. Поскольку цель - ознакомл...

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

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

Фаскосниматель для шпилек. Доработанная версия. Приветствую, товарищи. На днях выкладывал фаскосниматель. Уже после написания статьи пришла в голову пара идей по доработке.Во-первых, уменьшил общий диаметр, толщину стенки и зазор до барабана. Теперь можно обрабатывать болты от 10мм. Единственный минус - если долго обтачив...

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

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

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

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

А давайте… по ГОСТу Всем привет! Так исторически складывается, что когда вы разрабатываете государственные системы, в большинстве случаев требуется написание большого количества документации, а в данной ситуации такая документация еще и требует соответствию ГОСТ.Хотелось бы вспомнить одну из па...

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

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

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

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

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

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

Как хостить телеграм-бота (и другие скрипты на Python) на Repl.it бесплатно 24/7 Очень часто возникающий вопрос: где можно разместить скрипты на Python, Flask-приложение, телеграм или дискорд ботов?Один из вариантов — на своем компьютере при наличии внешнего IP-адреса и опыта в настройке проброса портов на роутере. Цель этот статьи - подробная инструкция...

Что такое состояние Привет! Меня зовут Артём Арутюнян, много где меня можно встретить под ником artalar. 10 лет я разрабатываю крупные веб-сервисы, и вот уже четыре года менеджер состояния, исследуя тему реактивности, консистентности данных и состояния. А началось всё с простого вопроса: поче...

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

Будни техпода. Подготовка сервера с Linux для работы по RDP Наконец мы добрались до новой статьи из серии «Будни техпода», где мы просим кого-то из специалистов поддержки рассказать о наиболее популярных кейсах, а также предложить то или иное решение для реализации поставленной задачи. В первой части мы рассмотрели вопрос проброса U...

По Death Stranding выйдет фильм По игре Death Stranding выйдет полноценный фильм. Картину запустила в производство Hammerstone Studios. Одним из продюсеров фильма будет создатель игры Хидео Кодзима. Читать полную статью

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

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

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

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

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

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

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

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

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

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

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

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

6 причин почему пользователи Windows не хотят переходить на macOS Некоторые из этих причин основаны на устаревших мифах, не выдерживающих критики в 2022 году и 2023 на носу. В этой статье мы рассмотрим распространенные мифы пользователей о macOS и причины, по которым им все же следует перекроить свою твердую позицию. Читать полную стат...

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

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

Кастомный генератор кода API: структура и методы доработки Всем привет! Меня зовут Юлия Сладковская, я разработчик в МТС Digital, команда BOPS (Backoffice Portal). Эта статья – про структуру генераторов NSwag для кода клиента и сервера на основе схемы API. Также я расскажу о создании кастомного генератора на базе стандартных генерат...

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

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

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

Пишем плагин для IntelliJ IDEA. Ускоряем написание тестов на DTO Когда пишешь тесты на обширную модель (DTO), ловишь себя на мысли, что сосредоточен не на тестовых данных, а на том, как ловчее избавить себя от написания boilerplate-кода.Как это сделать? Поискать готовое решение (плагин). А если его нет? Тогда – написать плагин.А если не у...

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

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

Vertical Boutique – нужны ли нам умные отели? Я посмотрел уже несколько умных домов с разной степенью автоматизации, но как насчет отеля? Чем сценарии умного дома могут быть полезны там, где ты живешь всего несколько суток? Ведь требования у всех разные, и всем не угодишь. Мне кажется, сценарии умного дома – вещь личная...

КриптоПро в Linux контейнере для использования КЭП от ФНС С Нового Года в России от Индивидуальных Предпринимателей (ИП) и директоров Обществ с Ограниченной Ответственностью (ООО) требуют использовать Квалифицированную Электронную Подпись (КЭП) выданную Федеральной Налоговой Службой (ФНС).В этой статье речь пойдёт о том, как работа...

Неизвестный UART: теория Можно с уверенностью сказать, что с момента публикации первой версии стандарта RS‑232 в мае 1960 года и по настоящее время, было написано приблизительно 109 независимых реализаций UART на всём, чём угодно. Однако, подобно «Hello world» в мире прикладного ПО, а также ми...

Разбор баланса My Mini Mart Привет! Недавно поиграл популярный (50+M скачиваний в GooglePlay) гипер-кэжуал проект My Mini Mart от компании Supersonic Studios LTD и очень мне захотелось разобраться в своих противоречивых эмоциях от этой игры. С одной стороны, просто — не значит плохо, да и геймплей мест...

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

Weak Pass Detector – запрет на использование утекших паролей в контроллере домена Всем привет! Меня зовут Иван Нагорнов, я руководитель направления в Лаборатории кибербезопасности Сбербанка. В данной статье будет сделан обзор и предложение к использованию одной из наших разработок, которая направлена на минимизацию использования утекших паролей из открыты...

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

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

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

Облачный умный дом: что нужно знать, чтобы избежать проблем В обычной жизни я не только тестирую оборудование умного дома, но и очень много путешествую. Любимое хобби в поездках – трекинг, особенно в холмистой местности. Ходил я и по лестницам Непала, и по левадам Мадейры, и по козьим тропам Азорских островов. К чему это я? Многим об...

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

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

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

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

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

[Перевод] Генерация конвейеров обработки данных в Dataflow Эта статья посвящена всем практикующим специалистам по данным, заинтересованным в освоении запуска, стандартизации и автоматизации пакетных конвейеров данных в Netflix. О Dataflow мы писали в статье под названием Data pipeline asset management with Dataflow. Та статья пред...

Вышел PHP 8.2: разбираем главные изменения Вместе с PHP-разработчиками Александром Макаровым (@SamDark), Валентином Удальцовым (@vudaltsov) и наставником Хекслета по PHP Владленом Гилязетдиновым (@funkylen) разбираемся, какие новые фичи появились в PHP 8.2, насколько эти изменения глобальны и какую роль в них сы...

Как технологии помогают бороться с лесными пожарами Привет, Хабр! Мы – Александр Просвирнин, руководитель проектного направления, и Иван Григорьев, старший менеджер, работаем в команде продукта «Видеонаблюдение» МТС. В этой статье мы расскажем о том, как современные технологии помогают бороться с лесными пожарами. В...

Что меняется внутри фрейма Ethernet при передаче от роутера к роутеру? Вопрос из заголовка, порой, вводит в тупик, даже коллег, имеющих сертификаты уровня CCNA. Давайте обсудим как выглядят фреймы на каждом этапе передачи от клиента к коммутатору, к роутеру, к межсетевому экрану и к серверу и какие поля при этом там меняются.Буду исходить из то...

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

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

[Перевод] Эксплойтинг браузера Chrome, часть 2: знакомство с Ignition, Sparkplug и компиляцией JIT в TurboFan В моём предыдущем посте мы впервые погрузились в мир эксплойтинга браузеров, рассмотрев несколько сложных тем, которые были необходимы для освоения фундаментальных знаний. В основном мы изучили внутреннюю работу JavaScript и V8, разобравшись, что такое объекты map и shape, ...

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

Go 1.20 и арена памяти Одной из революционных особенностей Go в сравнении с другими компилируемыми языками стало автоматическое управление освобождением памяти от неиспользуемых объектов (сборка мусора). В то же время она может привести к потере производительности при передаче контроля процессу уп...

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

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

[Перевод] Неявные параметры. Когда их следует использовать? Часть 1 Имплиситы (implicits) – одна из наиболее вызывающих опасения фич языка программирования Scala, и на то есть веские причины!Во-первых, понятие имплиcитов довольно специфично для Scala. Ни один другой основной язык программирования не имеет подобной концепции. Это означает, чт...

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

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

Генератор эмбеддингов: как провести качественный анализ метрик сотрудников без прямого доступа к персональным данным Привет, Хабр! Меня зовут Роман, я работаю в Сбере в блоке HR исследователем данных. Мне и моим коллегам часто приходится иметь дело с персональными данными сотрудников (далее ПДн). А получить допуск к использованию этих данных в различных контурах банка очень непросто: в Сбе...

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

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

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

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

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

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

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

Honor набирает добровольцев для тестирования MagicOS 7.0 на Honor 60 и Honor 50 Бренд Honor подошел к этапу закрытого бета-теста интерфейса MagicOS 7.0 на базе Android 13 для телефонов линеек Honor 60 и Honor 50. Для этого компания планирует набрать 8000 человек: по 2000 человек на тест каждой из четырех моделей. Набор добровольцев в Китае начался...

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

Это DLSS для YouTube. Nvidia запустила технологию RTX Video Super Resolution Компания Nvidia наконец-то полноценно запустила технологию RTX Video Super Resolution, поддержка которой появилась в Chrome ещё в начале месяца. Технология стала доступна вместе со свежим драйвером.  RTX Video Super Resolution работает подобно DLSS, повышая разреш...

От Isolation к Consistency — дорога длиной в 30 лет Участвую в стартапе, в котором разрабатывается СУБД нового типа (работает поверх некоторых kv-движков, кардинально расширяя их возможности, про это немного можно прочитать здесь). Для того, чтобы сравнить то, что понемногу получается, с тем, что имеется в индустрии, пришлось...

Team 4s2: Multiplayer FPS — ещё один «порт» Team Fortress 2 на Android Team 4s2: Multiplayer FPS — мобильная игра и шутер от первого лица, которая переносит Team Fortress 2 на смартфоны без явного разрешения от Valve. Отметим, что это единственный проект студии Night Owl Entertainment, о которой Google выдаёт ноль информации. Тем временем игро...

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

Аналитика рынка профессии с историей (Yandex Data Lake + Power BI) Как-то я написал статью Аналитика рынка профессии в три клика. Но подключение, описанное в статье, напрямую к сайту HHru, лишает анализ вакансий историчности. В дашборде хранится только один «снимок» данных на момент загрузки в него. Другими словами, при нажатии кнопки Обнов...

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

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

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

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

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

[Перевод] Ansible: 30 самых важных модулей для DevOps-профессионалов (часть 2) В прошлой части мы обсудили модули Ansible и прочитали о некоторых важных модулях. Таких, как модуль проверки подключения хоста и целевого узла (модуль ping), модуль, способный извлекать информацию из целевого узла (модуль setup), модуль управления существующим пакетом и уст...

Изучаем PostgreSQL. Часть 1. Знакомимся с архитектурой  На сегодняшний день существует большое количество различных систем управления базами данных - СУБД, от коммерческих до открытых, от реляционных до новомодных NoSQL и аналогичных.Одним из лидеров направления СУБД является PostgreSQL и ее различные ответвления, о некотор...

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

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

Я купил смартфон за 500 рублей, а он оказался с подвохом. Делаем из него домашний сервер К сожалению, не все покупки с пересылкой в другой город на онлайн-барахолках удачные. Иногда продавцы умалчивают серьёзные дефекты ништяков, а на почте всё проверить невозможно: ведь очередь тоже ждать не будет! Так и случилось в рамках сегодняшней статьи, когда я заказал Sa...

Лучшие практики UX/UI в e-сommerce Меня зовут Станислав Хрусталёв, я автор сайта hardclient.com. Работаю в управлении клиентским опытом с 2009 года. Пишу на эту тему, собираю лучшие практики из мира Customer Experience и оцениваю сервисные модели компаний.Некоторое время назад я задался идеей: собрать базу лу...

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

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

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

Есть ли польза от решения алгоритмических задач на LeetCode? Пожалуй каждый программист, который сталкивался с вопросом: "А как устроиться на работу в FAANG?" - получал ответ, что ему нужно разобраться с алгоритмами, со структурами данных и прорешать порядка 300-400 задач на leetcode&n...

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

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

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

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

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

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

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

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

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

Бюджетный 3D принтер как конструктор. Заменяем материнскую плату и прошивку К нам приехал принтер Creality Ender 3 v2 с процессором GD (GigaDevice) вместо ожидаемого STM (STMicroelectronics). Принтер в базовой комплектации еще как-то работает (хотя прошивка очень урезана), но часть периферии принтера не работает вовсе (датчик филамента), а остальное...

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

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

Критики и геймеры любят Dead Space Remake Dead Space Remake — классический хоррор без загрузок и с объёмным звуком. В нём есть несколько концовок, но до конца ещё надо дойти, ведь на «Ишимуре» происходят странные вещи и из каждого угла могут вылезти Некроморфы. В последние годы начался тренд на хейт и критику AAA-п...

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

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

VPN Gate, или — неубиваемая Великим Китайским Файрволом распределённая сеть VPN Сегодня речь пойдёт о технологии распределённой сети VPN Gate, своего рода недруга Поднебесной в области интернет цензуры. На Хабре много статей на тему SoftEther VPN (нижележащий слой VPN Gate), но нет ни одной технически всесторонней статьи про саму распределённую сеть и т...

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

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

[Перевод] Starting Electronics: руководство по веб-серверам на Arduino. Часть2. HTML и веб-сервер с SD картой От переводчика. Продолжаем изучать тему создания веб-серверов на Arduino и на микроконтроллерах вообще. В этой статье скомпанованы две части оригинального руководства — «Структура веб-страницы (HTML)» и «Arduino веб-сервер с SD картой». Материал в этих уроках излагается п...

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

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

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

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

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

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

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

Async/await в iOS: что нам дает неблокирование потоков Разработчикам, только начинающим работать с Async/await, бывает довольно сложно разобраться в главной его особенности — неблокировании потоков. Рассказываем, что такое неблокирование потоков, как оно работает и какие преимущества даёт Async/await при работе с большим количес...

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

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

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

Оценка юзабилити сайта мебельного магазина (кейс тестового задания) Всем привет! Меня зовут Павел и Junior UX/UI дизайнер. В активном поиске работы на данную позицию. В данном лонгриде, хочу поделиться с вами тестовым заданием, которое я выполнял для одной Digital компании.Задача:1) Оценить юзабилити сайта mnogomebeli.com и дать экспертное з...

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

Тестирование умерло, да здравствует тестирование Привет, Хабр! Меня зовут Артём Ерошенко, я — сооснователь Qameta Software. Больше 14 лет занимаюсь тестированием и автоматизацией. Работал в Яндексе, когда учился в университете, и писал первые автотесты, сделал опенсорсный проект Allure-фреймворк, способствовал появлению Ян...

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

В России прокомментировали написание диплома с помощью нейросети: запрет всё равно обойдут Глава компании «Нейросети Ашманова» Станислав Ашманов прокомментировал нашумевшую недавно новость, что студент РГГУ Александр Жданов признался в написании диплома с помощью чат-бота ChatGPT, работающего на основании искусственного интеллекта.

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

21 главный мультфильм 2023 года: всё, что стоит ждать и смотреть Новая картина Pixar, возвращение Марио и ещё один Человек-паук.

7 килограммов портативности, или ноутбук Amstrad ALT-386SX из 1988 года. Часть 2 — разбираем убердевайс Привет, Хабр! В первой части статьи о ноутбуке из 1988 года, который весит 7 кг я знакомил вас с его историей. Напомню, что девайс не включается. Делает попытки включиться, мигает светодиодами, включая Caps Lock, Scroll Lock и т.п., шумит иногда кулером, но сразу выключает...

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

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

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

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

[Перевод] Homescapes! Остин, в чем секрет? Часть 1. История, описание и монетизация Я занимаюсь гейм-дизайном игры в жанре Match-3. Это обязывает отыгрывать во все топовые Match-3, изучать механики этих игр и вообще всецело интересоваться данной темой. В русскоязычном интернете практически не встретишь статей об играх этого жанра, по крайней мере, о Homesca...

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

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

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

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

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

ТОП лучших стоматологических 3D сканеров 2022 Все больше и больше клиник переходят на цифровую стоматологию и активно используют 3D технологии для решения повседневных задач. В этой статье мы собрали топ лучших стоматологических 3D сканеров. Узнайте больше о современных решениях в стоматологии!Стоматологические сканеры ...

Лучшие open-source инструменты для Python проектов Open-source проекты, сторонние инструменты и библиотеки - это то, за что мы действительно любим Python. В этой статье я собрал самые полезные, валидированные сообществом и проверенные временем инструменты, конфигурации которых можно встретить в популярных проектах с открытым...

50+ бесплатных курсов и ресурсов по аналитике данных от Harvard, Google, Stanford (по которым я училась) Всем привет, меня зовут Маруся, я аналитик данных и на досуге веду телеграм-канал про аналитику. Так как я сама изучала аналитику данных по бесплатным курсам, параллельно стажируясь, а потом уже и полноценно работая в компаниях, у меня накопилось много классных бесплатных ку...

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

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

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

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

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

Делаем датчик качества воздуха с Modbus RTU на ESP8266 и Arduino Что‑то я не нашёл в интернете готового рецепта по созданию Modbus RTU устройства на Arduino и ESP8266. Всё, что попадалось было сильно оторвано от реальности: или предлагали по байтикам разбирать протокол, или для измене...

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

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

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

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

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

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

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

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

Домашняя лаборатория Угадай данную статью написал ChatGPT или нет?Хотите потестировать приложение, или опробовать в работе инструмент? В этой статье опишу то, как организовал тестовый стенд на Linux. Стенд поддерживает работу с доменами, умеет генерировать TLS сертификаты, легко масштабируется, ...

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

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

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

Моя попытка сделать утилиту для очистки Linux Всем привет! Я начинающий разработчик на языке Go. До этого у меня был, так сказать, небольшой опыт, но в виде хобби. Во время изучения я также осваивал Linux, сейчас уже пользуюсь им как основной ОС.Мой ноутбук довольно слабый, на борту всего 4ГБ ОЗУ, а на Windows существуе...

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

Тысяча и один справочник в Master Data Management Ростелекома Импортозамещение Всем привет! В предыдущей статье мы рассказали об использовании коробочного продукта Master Data Management и обещали рассказать о дальнейшем развитии подходов управления справочниками в компании. Сегодня мы сдержим свое обещание.Система MDM - специализированное програм...

[Перевод] Сравнение производительности обычного SQL, ORM и GraphQL в Golang в контексте принципов «радикальной простоты» Вам, наверное, знаком подход радикальной простоты, который заключается в том, чтобы иметь как можно меньше систем и наименьшее количество строк кода и конфигурации. Это снижает затраты на техническое обслуживание и делает изменения дешёвыми и лёгкими. Но радикальная простота...

[Перевод] Для этого не нужна ARIA В веб-разработке написание семантического HTML важно для доступности, а также дает некоторые приятные побочные эффекты, такие как поддержка режима «чтения» в браузере, SEO, graceful degradation и возможность экспорта. Читать далее

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

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

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

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

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

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

Как быстро сдать экзамен 1С: Профессионал по платформе «1С: Предприятие 8.3 Всем доброго времени суток!Имею желание поделиться своим опытом сдачи экзамена на сертификат "1С:Профессионал по платформе «1С:Предприятие 8.3"Какие бывают сертификаты, для чего те или иные необходимы, что с ними делать - описывать не буду, чтобы не создавать лишнюю смыслову...

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

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

10 топовых каналов в Телеграме, на которые стоит подписаться, если всё надоело Оказывается, читать одни и те же каналы в Телеграме постоянно получается не у всех: я давно заметил, что каждые 3-4 месяца наступает момент, когда удаляешь все источники информации в мессенджере, чтобы потом собрать их заново. Да, вот так, буквально по крупицам лента в Теле...

Можно ли установить Linux на Android смартфон или планшет? С каждым годом интерфейсы операционных систем, построенных на базе Android, становятся красивее. От этого они больше нагружают смартфон или планшет, а безопасность данных и самих пользователей уходит из их рук в лапы зарубежных IT-корпораций с постоянными взломами баз данных...

Применение DevOps-аутсорса на разных этапах жизненного цикла продукта Когда появляется потребность в DevOps-команде, перед бизнесом всегда встают конкретные вопросы: “А всё-таки, как решить мою проблему — нанять DevOps-специалиста в штат, использовать аутстафф или отдать проект на аутсорс? Есть ли четкие критерии для выбора? Что будет эффектив...

Picaso Designer X series 2. Контроль подачи ли? Выводы. Друзья, всем привет! Мы уже тут как родными становимся. Итак, проблема с контролем подачи Picaso разгадана!Для одних это будет бальзамом на душу, для других "сомнительным" спасением. Для меня же это - полное ДНО от Picaso! Но, по порядку. Букв будет много, статья ориентирова...

Что не так с твоим покрытием тестов в Go? Бюрократия семимильными шагами внедряется в процесс разработки. Людей в пиджаках интересуют лишь цифры, и это же относится к test coverage сервисов. Однако, покрытие зачастую (в том числе, благодаря создателям языка) не отображает полной картины мира. Так ли все плохо на сам...

Акты, классы и семантический сахар В предыдущей статье «Событийная онтология vs объектная» были введены основные положения событийной семантики, описаны ее отличия от объектно-ориентированных подходов к моделированию предметной области. В данном тексте на конкретных примерах демонстрируются особенности событи...

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

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

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

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

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

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

Как изучать Kubernetes джуну — и зачем Всем привет! Меня зовут Лина, я backend-разработчик в KTS.В нашей компании развита система наставничества. Каждому сотруднику строится индивидуальный план развития, включающий в себя как soft skills, так и необходимые для работы технологии. Раз в полгода мы проводим ревью, и...

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

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

Hashmap по версии Golang вместе с реализацией на дженериках Привет. Сегодня рассмотрим такую интересную структуру данных как hashmap, а именно ее реализацию в Go. Вкратце разберем что такое hashmap, как это выглядит под капотом Go 1.19. Посмотрим отличия реализации с Java и Python. Реализуем hashmap из под капота с помощью дженериков...

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

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

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

Семантическое версионирование и проблемы с зависимостями — коротко о lockfile Привет, меня зовут Анастасия Пласкевич, я фронтенд-разработчик. Недавно на проекте я разбиралась с зависимостями и углубилась в эту тему так, что собрала небольшой доклад о том, что такое Lockfile, как работает yarn.lock, как решать проблемы с зависимостями в проекте и делат...

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

Войны ИИ: Google против Microsoft. Как Google вчистую проигрывает одному ChatGPT Microsoft, Google, Baidu и другие вовсю работают над тем, чтобы первыми создать бота, который сможет отвечать на все ваши вопросы. Битва идет не на жизнь, а на смерть. И пока что в ней выигрывает Microsoft. Всё потому, что в 2019 году она инвестировала в OpenAI, конкурента...

[recovery mode] Переход с SAP на 1С: разбор преимуществ Автоматизированная система управления бизнес-процессами крупной компании SAP не поддерживается производителем в России. Уход с российского рынка ERP-систем этого крупного иностранного вендора стал неприятным сюрпризом. Большинство компаний решает ее переходом на отечественны...

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

Как айтишнику из России получить работу в Германии в 2023 году? По данным Ассоциации цифровой индустрии Германии Bitcom, в стране наблюдается огромный дефицит IT-специалистов. В 2021 году количество незакрытых вакансий в различных IT-отраслях составляло 96 тыс., и эта цифра с каждым годом демонстрирует рост.Поэтому именно для айтишников ...

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

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

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

KC868-A128: заявка на Книгу рекордов Гиннеса Сегодня мы поговорим о решении, достойном помещения в Книгу рекордов Гиннеса — это контроллер Kincony KC868-A128, имеющий на борту аж 128 цифровых входов и 128 транзисторных (MOSFET) выходов. Как говорится, «раззудись плечо, размахнись рука» — с такими ТТХ KC868-A128 может...

Анонс Windows 11 Insider Preview Build 22621.1391 и 22623.1391 (канал Beta) Добрый вечер, друзья! Microsoft выпустила новые предварительные сборки Windows 11 (версия 22H2) под номерами 22621.1391и 22624.1391(KB5023011) для участников программы Windows Insider на канале Beta. Сборка 22624.1391 — доступно тестирование новых функций. Сборка 22621.139...

Алиса (голосовой помощник Яндекса) играет в Шахматы Эта статья - личный опыт, как я "учил" Алису (голосовой помощник Яндекса) играть в Шахматы. Получилось интересно ... Читать далее

Обучение английскому по методу Арктуруса Менгска, или почему Старкрафт такой крутой Когда мне было 13 лет и я играл в Старкрафт, я был поражён тем, насколько “погружабельной” была эта игра. Даже при том, что я не понимал, что говорят в видеовставках, я был полностью в игре. Я прекрасно помню тот день, когда я впервые увидел видео коронации Арктуруса Менгска...

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

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

Колдовской NeoVIM. Часть третья. «Режимы сна, отдыха и Nvim’a» Режим в жизни нужен для того, чтобы не растолстеть к тридцати годам и высыпаться.Режимы в Nvim нужны для того, чтобы сломать жизнь неподготовленным чародеям, а выспаться вы сможете только тогда, когда полностью прочитаете всю документацию, сможете выйти из Nvim и, просветлен...

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

Оптимизация данных в MS SQL Основная статья Взаимодействие DWH Oracle и MS SQLОдним из методов для оптимизации обработки, хранения и администрирования данных в базе данных и кубах MS SQL — это процесс создании партицирования данных.Partitioning (партицирование или по-другому секционирование) —&nbs...

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

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

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

[Перевод] Не создавайте отдельные пути для sign-in В веб-приложении есть два варианта защиты экрана аутентификации: Если пользователь не аутентифицирован, перенаправить его по пути /sign-in: Если пользователь не аутентифицирован, показать ему форму входа по URL страницы, которую он пытался открыть, без перенаправления и ...

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

Торговые роботы на Python Привет! На связи команда Тинькофф Инвестиций. В этой статье рассказываем про Tinkoff Invest API, объясняем, как написать робота на Python, и разбираем плюсы этого языка в сравнении с другими. А вместо заключения ловите гайд по созданию робота на примере работы победителя наш...

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

Представляю универсальный responsive header для React.js Вы когда-нибудь думали о том, чтобы создать свой стартап? Почти каждому стартапу (да и +/- любой компании) нужен лендинг/сайт. А у каждого сайта вверху есть хедер с меню навигации. При чем в наше время он обязательно должно быть адаптивным, чтобы одинаково хорошо работать ка...

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

[Перевод] Как собрать, покрыть тестами и опубликовать TypeScript-пакет в npm в 2022 году В этой статье мы с вами создадим с нуля и опубликуем в  NPM TypeScript-пакет, не забыв про Jest для покрытия тестами.Мы инициализируем проект, настроим TypeScript, напишем для него тесты в Jest и опубликуем его в NPM. Читать далее

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

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

[Перевод] Инжиниринг исходящего трафика с Edge Fabric. Часть 1 Крупные поставщики контента создают точки присутствия по всему миру, каждая из которых подключена к десяткам или даже сотням сетей. В идеале такая сетевая доступность должна позволять провайдерам обслуживать пользователей лучше, но провайдеры не...

Полезные товары с AliExpress от 60 до 6000 рублей На днях мы рассказывали о том, какие вещи не надо покупать на AliExpress. Ниже в этой статье мы еще вернемся к данному вопросу. Но это редкие случаи и в последнее время, если основываться на базовых принципах выбора товара, почти наверняка можно купить что-то качественное и...

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

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

[Перевод] Node.js наизнанку: не все происходит в пуле потоков Node.js это кроссплатформенная среда выполнения JavaScript с открытым исходным кодом для выполнения JavaScript вне браузера. Он поддерживается движком Google V8, что делает его чрезвычайно производительным.Асинхронная среда выполнения, управляемая событиямиОдно из наиболее р...

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

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

[Перевод] Создание расширения браузера Google Chrome для извлечения всех изображений web-страницы. Часть 2 Представляю вашему вниманию вторую часть статьи о создании расширения web-браузера Chrome, которое позволяет извлечь все изображения с web-страницы.В этой части я покажу как автоматически упаковать все изображения этого списка в ZIP-архив и предложить пользователю его скачат...

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

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

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

[Перевод] Квазицитирование в Lisp Аннотация Квазицитирование (quasiquotation) — это технология, обычно используемая в Lisp для создания программ, генерирующих другие программы. В статье объясняется механизм работы квазицитирования, поясняется почему он работает именно так и каковы его ограничения, а также да...

Пресс-релиз сборок Windows 11 Insider Preview Build 22621.1391 и 22624.1391 Компания Microsoft выпустила Windows 11 Insider Preview Build 22621.1391 и 22624.1391 для инсайдеров в Beta Channel. • Build 22624.1391 = Новые функции развернуты; • Build 22621.1391 = Новые функции отключены по умолчанию; ОБНОВЛЕНО: Инсайдеры, которые ранее использовали сбо...

Лучший формат данных, для хранения pandas.DataFrame Привет, Хабр!Меня зовут Вадим Москаленко и я разработчик инновационных технологий Страхового Дома ВСК. В этой статье, хочу поделится с вами, информацией в области хранения данных.На сегодняшний день существует огромное количество форматов для хранения данных, и, используя би...

Java. Работа с XML-документами Привет, Хабр! Меня зовут Михаил, я SDET-специалист компании SimbirSoft. Я занимаюсь автоматизацией тестирования, в основном это работа с WEB и REST API, но на последнем проекте применял SOAP. Мне приходилось работать с сообщениями этого протокола, а именно:— выполн...

[Перевод] Продолжение о типах кабелей USB-C: переходники вне стандарта Давайте будем откровенны — одних только кабелей USB-C — USB-C недостаточно. Существует и много других видов, которые могут потребоваться в повседневной жизни, пока в нашем обиходе присутствуют устройства без разъёма USB-C. Однако в спецификации учитываются далеко не все тип...

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

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

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

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

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

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

Когда разгон это необходимость или как получить 20% FPS от своей DDR5 на примере Adata XPG 6400 В этой статье мы разберем влияние разгона DDR5 на чипах Hynix M-Die на частотах от 4800 до 7200 с настройкой таймингов и без. Протестируем в играх без упора в видеокарту.

[recovery mode] Как доработка UX помогла сократить время прохождения сценария заказа еды на 70%. Часть 3 Всем привет, мы дизайнеры студии Focus. Во второй части статьи мы рассказывали, как проводили тестирование и готовились к нему. А также, как провели небольшое исследование конкурентов. В заключительной части мы покажем обновленный дизайн приложения по доработанному сценарию....

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

Пентест. Думаем как злоумышленник. Часть 3: Эскалация привилегий и социнженерия В предыдущих статьях (Часть 1, Часть 2) мы поговорили о том, как может действовать Внешний нарушитель (пентестер за пределами организации) и Гость (пентестер  имеет только доступ в сеть) при проведении пентеста. Также начали рассматривать действия Внутреннего нарушителя...

Ностальгические игры: Deus Ex (часть 1) В наше время, когда у всех на слуху франшизы-гиганты вроде Call of Duty, Assassin`s Creed и Fortnite, очень мало кто помнит такие культовые и жанрообразующие франшизы, как System Shock, Thief и Deus Ex, созданные гениальным геймдизайнером Уорреном Спектором.Да, многие соврем...

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

Про Inbox, веселые легаси и динамические микрофронты Наш Альфа-Банк прекрасен. Мы его очень любим, но он такой большой-большой, разнообразный и сложный. Думаю, никого не удивил :) Наш ИТ-ландшафт содержит великое множество всякой «флоры и фауны», с которой необходимо считаться. То тут, то там, из глубоких Enterprise джунглей н...

Анонс Windows 11 Insider Preview Build 25330 (канал Canary) Добрый вечер, друзья! Microsoft выпустила новую предварительную сборку Windows 11 под номером 25330 для участников программы Windows Insider, использующих канал Canary. Полный номер сборки: 10.0.25330.1000.rs_prerelease.230325-1609. Напомним, что канал Canary идеально подхо...

[Перевод] Kubeflow: учимся устанавливать и запускать Kubeflow на локальной машине Пошаговое руководство по установке и конфигурированию всех компонентов kubeflow на локальной машине. Рис. 1. Взаимодействие Kubeflow и Kubernetes | рисунок автора |иконки от Eucalyp Kubeflow [1] – это созданная Google опенсорсная платформа, на которой разворачивается весь...

[Перевод] 2.6 миллиона доменов и ~45 000 открытых Phpinfo() спустя… История о незащищенном Phpinfo() После сканирования 2.6 миллионов доменов на наличие открытых .git каталогов (ссылка на статью), .env (ссылка на статью) и .DS_Store (ссылка на статью) файлов я проделал такое же сканирование для phpinfo-файлов, таких как info.php или phpinfo.php.В первой части этой статьи я ...

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

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

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

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

3D принтер FlyingBear Reborn 2. Обзор, тестирование, впечатления. Сегодня на обзоре внушительных размеров принтер. И так сложилось, что за все время что я занимаюсь 3д печатью это всего лишь второй принтер от компании Flying bear. И это тот принтер, который я давно ждал от этой компании.Причины, почему я не покупал особо принтеры от этой к...

Как я написал Telegram-бота для учёта подписок Как я написал Telegram-Бот для учёта подписокНаписал Telegram-Бот для учёта подписок и регулярных расходов на Python и Yandex. CloudОн умеет предупреждать по 3 основным сценариям:1. Окончание пробного периода.2. Ежемесячная подписка.3. Ежегодная подписка.В статье расскажу пр...

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

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

Зеркалирование GitHub-проектов в 2023 году По ряду причин я решил зеркалировать свои открытые GitHub-проекты на другие платформы совместной разработки. Сделать это оказалось не так просто. В этой короткой статье описаны трудности, с которыми мне пришлось столкнуться, и итоговое рабочее решение. Читать далее

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

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

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

Подвинься, Nvidia! Энтузиаст показал, что на ПК с AMD Ryzen 7 6800H и встроенной графикой Radeon 680M вполне можно играть Похоже, встроенные видеокарты помалу догоняют полноценные дискретные решения. Во всяком случае, это касается AMD. Автор YouTube-канала zWORMz Gaming протестировал ПК с процессором AMD Ryzen 7 6800H и встроенной графикой Radeon 680M. Как оказалось, результаты сравнимы с ...

Развертывание копий Zabbix на Ansible Недавно выпала задача по развертке копий основного Zabbix-server на несколько машин, дабы хранить конфиги на разных серверах, да и еще всунуть это в CI/CD GitLab. В общем, подробно описал свое решение со ссылкой на репозиторий. Читать далее

[Перевод] 38 лучших CI/CD-инструментов в 2022 году Непрерывная интеграция (CI) и непрерывная доставка (CD) или CI/CD стали неотъемлемой частью подхода к разработке программного обеспечения и тестирования DevOps. Этот подход дает разработчикам возможность непрерывного развертывания кода. Кроме того, ошибки выявляются на ...

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

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

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

Профессиональные задачи, которые вы можете решить с AI системой ChatGPT от OpenAI Мир охватила новая волна безумства вокруг AI, все соц.сети заполнены огромным количеством экспериментов вокруг нового продукта - ChatGPT. В этой статье я расскажу вам о 30+ самых интересных кейсов использования AI-чата на базе открытого искусственного интеллекта от ...

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

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

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

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

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

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

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

Раскрыта дата финального ЗБТ Honkai: Star Rail Honkai: Star Rail — игра для ПК и смартфонов. Чтобы принять участие в финальном ЗБТ перед релизом, надо пройти по ссылке и подать заявку до 2 февраля. На время написания этой статьи уже 1 млн человек проявили интерес к этому бета-тесту. Отметим, что не все из них смогут попа...

Вышла iOS 16.2 с умным караоке, настройками Always On Display и сквозным шифрованием в iCloud iOS 16.2 вышла официально. Качаем! Спустя почти полтора месяца предварительных испытаний сегодня, 13 декабря, Apple представила iOS 16.2. Теперь это не очередная бета-версия для разработчиков, выход которых мы привыкли освещать раз в неделю, а полноценный релиз, то есть его ...

Настройка автомасштабирования в кластере Azure HDInsight Давайте поговорим о том, как настроить автомасштабирование для существующего кластера Azure HDInsight с помощью Azure CLI.Microsoft Azure — это служба облачных вычислений, предлагаемая и управляемая Microsoft. Azure HDInsight — это управляемая комплексная облачная служб...

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

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

Что такое обработка с ЧПУ и как она работает - просто о сложном В этой статье популярно рассмотрим, что такое ЧПУ обработка и для чего она применяется

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

Git scraping: методика бесплатного хостинга не совсем статических сайтов Ни для кого не секрет, что, используя GitHub Pages, вы можете бесплатно разместить свой статический веб-сайт в сети Интернет. 1 Гбайт доступного пространства, SSL-сертификат, возможность привязать собственный домен — разве не сказка? Но что делать, если вам необходимо, чтобы...

Что произошло с hh.ru в 2022 году 2022 был… ну вы знаете. Штормило всех и с разной степенью интенсивности. Хорошо, что можно сублимировать тревожность в работу! Не благодаря, но вопреки всем невзгодам hh.ru продолжает развиваться и становиться лучше. Мы старались чаще выкатывать новые возможности и совершенс...

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

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

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