Социальные сети Рунета
Среда, 24 апреля 2024

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

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

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

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

Изучаем Python за 6 месяцев. Подробный план обучения Простой и красивый синтаксис, множество библиотек под самые разные задачи и большое комьюнити делают Python одним из самых популярных языков программирования на сегодняшний день, который активно используется в data science и машинном обучении, веб-разработке и прочих областя...

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

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

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

Книга «Pandas в действии» Здравствуйте, Хаброжители! Давненько вас не радовали новинками. Язык Python помогает упростить анализ данных. Если вы научились пользоваться электронными таблицами, то сможете освоить и pandas! Несмотря на сходство с табличной компоновкой Excel, pandas обладает большей ги...

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

Polars: библиотека для работы с данными, написанная на RUST Настоящий хреновый программист всегда находится на гребне волны новых технологий. Зачем ему это? Чтобы при случае можно было повыделоваться багажом своих знаний, и заработать немного очков уважения в окружении своих менее осведомлённых коллег. Stay toxic, brothers. Я с вами....

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

Автоматизация go get — больше не нужно запоминать названия библиотек Каждый раз, когда вы начинаете новый репозиторий программы на Go, первое, что необходимо сделать - добавить библиотеки, которые вы будете использовать. Для этого используется go get. Обычно нужные библиотеки копируются из go.mod соседнего проекта. Но копипаст - не наш метод!...

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

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

Упрощаем себе жизнь при разработке интерфейса взаимодействия приложения и БД Привет, %username%! Меня зовут Антон Жеронкин, я Data Scientist в Сбере, участник профессионального сообщества NTA. Сегодня поговорим о том, как можно сделать лучше жизнь разработчиков, которые часто сталкиваются с базами данных. Дело в том, что, когда разработчики вручную п...

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

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

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

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

TAPE: первый бенчмарк для few-shot оценки языковых моделей на русском языке Мы в SberDevices обучаем и оцениваем языковые модели для русского языка уже давно — так, например, за два года существования бенчмарка Russian SuperGLUE через его систему оценки прошли более 1500 сабмитов. Мы продолжаем разрабатывать инструменты для русского языка и в этой с...

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

Визуализация весов в машинном обучении на примере алгоритма Random Forest и Decision Tree Привет, Хабр!Меня зовут Александр Серов, я Data Scientist и являюсь участником профессионального сообщества NTA.  Сегодня загляну «под капот» алгоритмов, использующих в своей основе деревья решений. Один из самых мощных алгоритмов контролируемого машинного обучения...

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

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

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

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

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

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

Введение в библиотеку Transformers и платформу Hugging Face Библиотека Transformers предоставляет доступ к огромному кол-ву современных предобученных моделей глубокого обучения. В основном основаных на архитектуре трансформеров. Модели решают весьма разнообразный спектр задач: NLP, CV, Audio, Multimodal, Reinforcement Learning, Time ...

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

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

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

[Перевод] Чистый код: как писать код, который легко читать Для начала мы обсудим, зачем вам вообще может понадобиться писать более читаемый, а не краткий код. Затем мы рассмотрим стратегии, как это делать в случае: Именования переменных, классов и функций Вспомогательных функций Комментариев к коду Перечислений/словарей/запечатанн...

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

Как настроить библиотеку SFML в Visual Studio Следующая тема Инструкция подключения мультимедийной библиотеки SFML к Visual Studio С++. Читать далее

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

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

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

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

Создание модуля WebAssembly с помощью Emscripten, AssemblyScript и Rust В этой небольшой заметке предлагается рассмотреть несколько способов компиляции модуля для WebAssembly, используя три разных подхода. Мы реализуем решение одной и той же задачки на трёх языках и скомпилируем полученный код в модуль WebAssembly. Будем использовать:Emscripten ...

Microsoft выпустила список изменений сборки Microsoft Edge Stable Build 108.0.1462.42 Компания Microsoft выпустила список изменений сборки Microsoft Edge Stable Build 108.0.1462.42. Новые функции • API-интерфейсы Graph для Cloud Site List Management. Новые API-интерфейсы Graph, которые позволяют ИТ-администраторам в организациях создавать, управлять и публико...

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

Obsidian + Dataview: Таблицы На статью меня вдохновил этот комментарий .Dataview - это мощный плагин для Obsidian позволяющий отбирать данные (теги, даты, числа и любые другие пользовательские параметры) markdown-заметок, а затем их фильтровать и отбирать как пожелаешь.Это такой своеобразный аналог Noti...

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

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

[Перевод] Playwright и Puppeteer в 2023 году: что выбрать Дебаты по поводу выбора между Playwright и Puppeteer — это большая дискуссия, поскольку они обе являются фантастическими библиотеками Node.js для автоматизации браузера. Хотя эти библиотеки делают практически одно и то же, между Puppeteer и Playwright ест...

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

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

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

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

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

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

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

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

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

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

[Перевод] NoNa: Алгоритм заполнения отсутствующих данных Мой первый open-source продуктGitHub — AbdualimovTP/nona: библиотека для заполнения пропущенных значений с использованием методов искусственного интеллекта  Читать далее

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

«Чтение — всему голова!» Переводим электронные книги формата .EPUB с помощью Python Разберёмся что “под капотом” формата EPUB и как перевести текст, но не переводить код в книге. Познакомимся с библиотекой Ebook Lib, а также узнаем для чего нам понадобиться библиотека Beautiful Soup. Читать далее

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

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

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

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

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

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

[Перевод] Как писать код на Go? Подход Google. Часть первая Рекомендации по стилю для проектов из Google с открытым исходным кодом Руководство по стилю Go Принципы стиля Есть несколько общих принципов, обобщающих представления о том, как писать читаемый код на языке Go. Ниже перечислены признаки читаемого кода в порядке их важности: ...

[Перевод] Алгоритмы диапазонов C++20 — 7 немодифицирующих операций Библиотека Ranges для C++20 предлагает альтернативы для большинства алгоритмов. На этот раз я хочу показать вам десять немодифицирующих операций. Мы сравним их со «старой» стандартной версией и увидим их преимущества и ограничения. Подробности — к старту нашего курса по раз...

Нейросеть ChatGPT сделала за меня анализ данных: аналитики будут не нужны? От автора Telegram-канала Аналитика и Growth mind-set (делюсь кейсами с работы, бесплатным обучением, задачами с собеседований).Последовательно я проверила, как нейросеть:- справится с написанием SQL-запросов разной сложности- с задачей визуализации данных и получе...

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

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

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

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

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

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

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

Состоялся релиз стабильной версии Microsoft Edge 108 Microsoft начала распространять стабильную версию Microsoft Edge 108 (108.0.1462.42), которая принесла с собой улучшенную защиту в веб-среде и Graph API для Cloud Site List Management. Обновления компонентов Graph API для Cloud Site List Management. Добавлены новые API-инт...

JavaScript: замена фона видео и реализация интересных эффектов на основе координат лица в реальном времени Привет, друзья! Я продолжаю изучать MediaPipe — библиотеку с открытым исходным кодом от Google, предоставляющую "кроссплатформенные и кастомизируемые решения на основе машинного обучения для работы с медиа", и в этой статье хочу рассказать вам о 2 инструментах: ...

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

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

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

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

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

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

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

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

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

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

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

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

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

Жизненный цикл задачи после разработки Что есть задача для разработчика?  Как правило, разработка получает от продукт-менеджера, техническое задание на разработку новой или исправление старой функциональности. Например, это выражено в виде PRD https://en.wikipedia.org/wiki/Product_requirements_document ...

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

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

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

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

Честные модули внутри PHP: теперь они существуют Низкий порог входа и строгость языка программирования — вещи обычно несовместимые. Потому что ты либо, как Rust, бьёшь по рукам borrow checker’ом — либо, как PHP, позволяешь не задумываться о типах и быстро прототипировать. На самом деле, если писать код грамотно, это с...

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

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

Библиотека ML Tuning: как подобрать гиперпараметры модели GBTRegressor в PySpark Привет, Хабр! Меня зовут Никита Морозов, я Data Scientist в Сбере. Сегодня поговорим о том, как при помощи библиотеки ML Tuning осуществить подбор гиперпараметров модели GBTRegressor в PySpark. Зачем всё это нужно? Дело в том, что они используются в машинном обучении для упр...

Жуткий сценарий использования ChatGPT Вчера у меня в ленте на фейсбуке (жаль что в закрытом посте) проявился еще один аспект ChatGPT, жуть которого я не вполне осознавал. Представьте, что ваш менеджер присылает вам емейл: "я вот тут сгенерил с помощью ChatGPT код на языке описания аппаратуры SystemVerilog, котор...

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

Задача коммивояжера (TSP) точное решение — метод целочисленного линейного программирования (Integer programming) Дочитав эту статью до конца, вы сможете решать точно задачу коммивояжёра на сотню элементов за считанные секунды! Заинтригованы? Тогда, добро пожаловать под кат. Читать далее

Быстрый консольный ввод на .NET Во времена, когда .NET был закрытой технологией только для Windows, за ним и языком C# закрепилась репутация платформы, которая отлично подходит для решения бизнес-задач, но непригодна для соревновательного программирования и написания высокопроизводительного кода. Часто при...

Изучаем Reanimated 2 создавая анимированный компонент React Native предоставляет Animated API который может покрыть часть базовых потребностей вашего приложения, однако если вы хотите создавать сложные и производительные анимации на 60fps, без сторонних библиотек вам не обойтись. И сегодня я хотел бы рассказать о Reanimated 2 и...

Как я приложение с Go на Rust переписывал О Rust я слышал ещё несколько лет назад и все его либо хватили, либо порицали, по различным причинам, но сам как-то не брался за него - мне, неподготовленному к подобному синтаксису и не знакомому с подобными языками хотя бы на базовом уровне, в то время он казался совершенн...

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

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

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

Сделал приложение для создания мультиязычных книг и параллельных корпусов Хочу показать, как создать мультиязычный параллельный корпус и книги при помощи моего пет-проекта, которым я занимаюсь несколько лет.Для примера возьмем 10 редакций "Мастера и Маргариты" Михаила Булгакова (ru, uk, by, en, fr, it, es, de, hu, zh). Сначала выровняем девят...

Vicuna, Stable Diffusion и другие нейронки на винде без боли Привет всем, хочу поделиться своим сборником всяких портабелек нейронок разного пошиба для винды, где уже всё установлено и надо приложить минимальные усилия, чтобы всё это запустить. Вообще все эти штуки я собирал и делал для себя, но когда я выложил это всё на itch, то ока...

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

Что НЕ должен делать тимлид — или сага о задачках в таск-трекере Привет! Меня зовут Виталий, я фронтенд-тимлид в KTS. Рассказываю, что входит в нашей компании в обязанности тимлида, а что — нет.  Спойлер: это не расставление задач в таск-трекере.Зоны ответственности тимлида отличаются от компании к компании и от проекта к проекту. Ин...

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

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

[recovery mode] Стрёмное собеседование в Яндекс Находит меня хеадхантерша из другой страны и предлагает попробовать пройти собеседование в Яндекс. Работы почти нет, зарплаты, судя по рассылкам, там большие. Немножко не тот профиль вообще, но в частности в требуемой теме полгода опыта есть. Сказала, что там задачи решать. ...

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

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

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

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

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

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

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

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

Книга «Kotlin. Программирование для профессионалов. 2-е изд.» Привет, Хаброжители! Kotlin — это язык программирования со статической типизацией, который взяла на вооружение Google в ОС Android. Кроме того, это мультиплатформенный язык, позволяющий создавать приложения для macOS, Windows и iOS. Джош Скин, Дэвид Гринхол, Эндрю Бэйли ...

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

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

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

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

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

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

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

Реверс-инжиниринг китайского ПЛК FX3U-14MR. Часть 2. Софт В первой части мы познакомились с аппаратным обеспечением китайского клона ПЛК FX3U-14MR (одного из его вариантов). В это части мы научимся подключаться к его MCU по доступным коммуникационным интерфейсам, останавливать, запускать программу, заливать прошивку. И в конце расс...

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

Обзор книги Дэна Бейдера «Чистый Python. Тонкости программирования для профи» — почему её стоит прочитать Для кого эта книга? Точно не для начинающих — это не учебник. Скорее, для профессионалов, но и не для гуру. Если вы уже программируете на Python, но всё ещё чувствуете себя неуверенно в чисто питоновских концепциях, то эта книга для вас. Особенно, если до этого вы писали при...

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

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

Приглашаем на Ozon Tech Community QA (Python) Meetup Всем привет!Меня зовут Игорь, и я руковожу тестированием в Ozon Fintech. Внутри Ozon тестирование на Python популярно в командах логистики, склада, маркетплейса и всего финтеха. Почему мы используем этот язык?Ответы на поверхности:- Он прост в изучении и применении – эт...

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

Лучшие библиотеки Java для тестирования в 2023 году Большинство из нас стремятся быть более эффективными, действенными и содержательными в тестировании. И мы делаем все необходимое для этого. Лучший способ сделать это — проводить автоматизированное тестирование вместо ручного. И, конечно же, мы хотели бы знать все современные...

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

Система FormXtra.AI 8.4 демонстрирует улучшения в автоматизации извлечения сложных данных Компания Parascript, специализирующаяся на разработке программного обеспечения с более чем 25-летним опытом извлечения данных, выпустила новую версию своего решения Intelligent Document Processing (IDP), FormXtra.AI 8.4. В этой новой версии добавлена многоязычная поддержка д...

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

Дизайн-долг платежом красен: улучшаем таблицы в большом продукте Меня зовут Александра, я дизайнер из Ozon в SX — Seller Experience. Сегодня расскажу продуктовую историю о таблицах и дизайн-долге.Иногда приходится работать с устаревшими системами, при этом ресурсов на улучшение нет, и поэтому новые доработки внедряются с минимальными изме...

В этом режиме производительность CPU AMD вырастает порой в три раза. Появились тесты 96-ядерного Epyc 9654 с AVX-512 Недавно AMD представила уникальные монструозные 96-ядерные процессоры Epyc линейки Genoa. Сегодня мы можем ознакомиться с результатами тестирования такого CPU (Epyc 9654) при использовании инструкций AVX-512.  Нужно отметить, что инструкции AVX-512 нужны далеко не...

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

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

Snapdragon 8 Gen 2 получилась отличной игровой платформой, причём даже в неигровых Xiaomi 13 Pro и Vivo X90 Pro+ Согласно свежим тестам, однокристальная система Snapdragon 8 Gen 2 не повторила судьбу 8 Gen 1 и не стала слишком горячей и неэффективной. Кроме того, это одно из лучших игровых решений, на основе тестов игры Genshin Impact.  Пока смартфонов с новой платформой Qua...

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

Пишем продвинутый планировщик с использованием React, Nest и NX. Часть 3: работа с задачами Друзья, всем привет! Меня зовут Игорь Карелин, я frontend-разработчик в компании Домклик. В прошлой части мы разобрали, как создать аутентификацию с помощью библиотеки Passport, а сегодня мы рассмотрим такие манипуляции, как добавление, редактирование, удалени...

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

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

Intel собирается существенно снизить цены на свои CPU после того, как в прошлом месяце их повысила Компания Intel недавно повысила цены на процессоры Alder Lake, а теперь собирается их снизить.  Согласно данным DigiTimes, процессорный гигант намерен достаточно серьёзно изменить цены. Речь идёт об удешевлении CPU Alder Lake, то есть Core 12-го поколения, на 20%....

Библиотека алгоритмов на графах на языке Go. Часть 1 Приветствую тебя, дорогой читатель! Мне 21, я студент и младший Go-разработчик, а это - мой первый пост на Хабре. Недавно в компании с одногруппником мы решили взяться за амбициозный проект и я решил, что он, как никакой другой, подходит под первую статью. Проект заключается...

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

Задачи “про гномиков” Много статей написано о том, как надо или не надо проводить собеседования. Вот ещё одна. Я хочу обсудить такой популярный класс как «задачи про гномиков». Что это такое, как это работает и работает ли, в каких случаях лучше примен...

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

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

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

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

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

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

Страх и ненависть в переговорке: курим VideoSDK API, Vosk и Python Сегодня поговорим о кастомных решениях для видеоконференцсвязи (далее — ВКС) с минимальными затратами человеко-часов и финансов на их создание. Я параноик Брать готовый open-source – меня не устраивает, всем известны случаи встраивания bad code в проекты с открытым исходным ...

gRPC — альтернатива REST API от Google ПроблемаКогда мы разрабатываем приложение, которое разделено на независимые автономные компоненты, мы говорим о микросервисной архитектуре. Для взаимодействия компонентов используется API. Самый популярным API является REST. Это обусловлено его гибкостью, эффективностью (в б...

[recovery mode] Озон.Профит — личный опыт Сразу скажу, что собственно до модерации я не добрался - запоролся на обучении, так что «личный опыт» - это очень громко сказано. Но уже обучения оказалось достаточно фееричным, чтобы у меня возникло острое желание о нём написать. Некоторое время назад Озон громко заявил о с...

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

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

Как мы интегрировали и настроили для работы Conventional Commits в PHPStorm Поднялся вопрос стандартизации коммитов в команде. До этого были такие правила, мы пишем номер задачи и через тире описание того, что было сделано кратко. Номер задачи берется из номера issue. Например: #1 - реализован функционал сборки прода. Но, это надоело и стало как-то ...

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

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

Трекинг без разметки или как следить за тысячами пузырьков на производстве Привет, Хабр! Меня зовут Клоков Алексей, сегодня поговорим об алгоритмах компьютерного зрения, обработке видеопотока и подходах к трекингу без разметки (unsupervised tracking). Методичка будет полезна как опытным специалистам, перед которыми стоит подобная задача, так и нач...

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

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

[Перевод] Что может быть проще (сложнее), чем упорядочивание чисел? Предположим, вы программист и у вас есть два числа. Вы хотите узнать, какое из чисел больше. Если оба числа имеют одинаковый тип, то почти в любом языке программирования решение будет тривиальным. Для этой операции обычно даже есть специальный оператор <=. Вот пример на ...

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

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

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

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

ActiveRecord Schema Consistency — а если проверю? Это ещё один текст по мотивам доклада на Ruby Russia 2022. Он посвящён консистентности схемы базы данных на примере библиотеки database_consistency. Автор — Евгений Демин, Principal Engineer и Ruby-разработчик Toptal. Читать далее

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

10 популярных вопросов, которые нужно знать, чтобы пройти собеседование на позицию Flutter-разработчика Привет, на связи Flutter-команда Mad Brains. Сегодня мы разберём 10 часто задаваемых вопросов на собеседованиях на позицию Junior Flutter Developer. Наш ведущий Flutter-разработчик расскажет, как показать себя во всей красе и получить оффер. А в конце статьи вас ждет приятны...

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

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

Компания Supermicro выпускает новую серверов X13, оснащенных процессорами Intel® Xeon Scalable 4-го поколения Компания Supermicro, Inc. (NASDAQ: SMCI), поставщик комплексных ИТ-решений для облачных вычислений, искусственного интеллекта/машинного обучения, хранения данных и 5G/Edge (граничных вычислений), запускает самую обширную в отрасли линейку серверов и хранилищ первого уровня с...

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

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

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

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

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

[Перевод] Rust: что такое unit-подобные структуры? Определение, назначение и примеры Unit-подобная структура (или “unit-like”, потому что она похожа на пустой кортеж (), иногда называемый “unit”) — это специальная структура на языке программирования Rust, которую мы объявляем без каких-либо полей. Определяется она с помощью ключевого слова struct, за которым...

Групповой видеозвонок на сайт Ещё одна история изучения и использования технологии WebRTC (Web Real-time Communication). Краткое описание создания готовой библиотеки для её переиспользования в разных проектах. Читать далее

6 книг по MySQL для старта работы и погружения в технологию MySQL — реляционная СУБД, использующая декларативный язык программирования SQL. Она предлагает все необходимые возможности для создания баз данных и написания серверных приложений. В нашей подборке — 6 книг по MySQL, которые будут полезны как на старте, так и для развития ...

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

Ремонт наковальни с помощью 3D сканирования: реальный кейс с оборудованием Scantech В этой статье вы познакомитесь с реальным примером использования 3D сканирования для работы с крупноформатными изделиями. Узнайте, как компании используют возможности 3D технологий для ремонта оборудования.Краткое резюмеЗадача: Осмотр негабаритного блока наковальни для ремон...

Еще раз про интеграционное тестирование ASP.NET Core c testserver и testcontainers Хабр, привет! Сегодня я предлагаю совершить небольшое исследование на тему "как нам обустроить интеграционное тестирование и встроить его в сиайку". Написать эту заметку меня сподвигла дискуссия, случившаяся недавно на работе. Инициативная группа "четырехглазы...

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

НДФЛ для удаленщиков и вредные советы Да, тема релокации все еще актуальна и регулярно появляются статьи, связанные с этой темой. Как правило, это мини-блоги в стиле «У меня получилось», я живут там-то, сейчас расскажу, через что прошел. Но вот эта статья своим содержанием и посылом сильно выбивается на общем фо...

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

Как багатон снизил нам количество багов с 900 до 950 Количество заведённых багов к количеству исправленных: расскажу про день, когда мы переломили тренд У нас некоторое время назад сменился CTO и некоторые детали в политике качества. В какой-то момент это привело к тому, что мы решили наводить порядок в багах. История дос...

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

Год Тигра в Taiga UI В предновогодней суете мы любим подводить итоги уходящего года. Эта хорошая традиция помогает вспомнить свои успехи и неудачи, чтобы взять верный курс в новом году. Весь год я участвовал в разработке потрясающего продукта — Taiga UI. Это библиотека компонентов на A...

Как написать 2D игру на C++ и чистом STL для терминала в Linux Привет хабр, я PHP разработчик с опытом работы в продакшне более 8 лет. После долгого и упорного труда мне стало скучно пилить микросервисы и бэкенды в хайлоде, я решил постичь магию разработки игр. Выбрал курс по Unreal Engine 5 и C++, так как там все структурировано, понят...

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

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

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

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

«Midjourney на коленке». Как развернуть нейросеть в облаке за 5 минут: начало работы с Diffusers Построить свою конвейерную ленту по разработке нейронок не так сложно. Нужен «всего лишь» сервер с GPU и настроенное окружение с библиотекой Diffusers. Если вам интересно, что это такое, как создать свою «Midjourney на коленке» и генерировать вайф в режиме 24/7, добро пожал...

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

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

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

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

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

Инженерная культура в больших корпорациях: дайджест публикаций Хабра На этой неделе сразу две компании — Meta* и Amazon, — решили внести заметные изменения в свою работу. Meta сломала устоявшуюся структуру и предложила многим менеджерам среднего звена спуститься с командных высот на землю и поработать руками: писать код, заниматься исследован...

Как мы затащили MoscowCityHack2022 10-13 июня 2022 года прошел MoscowCityHack2022. Наша команда NorthShine заняла на нем первое место в первом кейсе. Задача была написать "сервис проверки поддельных новостей (fake news) в сфере технологий и инноваций". Мы провели небольшой ресерч и определились с тем, как в ...

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

Программирование микроконтроллеров AVR в IDE Lazarus Вот появилось желание написать небольшой проектик для себя с применением микроконтроллера. В CodeVisionAVR команды не подсвечиваются по Ctrl+Пробел, да и Си что-то начал забывать, вспоминать - лень... Конечно, вспомнить Си - это 10-30 минут, но лень... Поэтому, было решено ...

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

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

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

Что нам несет Python 3.12 Переписали виртуальную машину на новый DSL И теперь ее гораздо проще менять, оптимизировать и проводить эксперименты.В качестве примера, можно посмотреть на попытку добавления register-based интерпретатора. Другой пример, что часто два опкода идут вместе и выполняются послед...

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

Контроллер CH579. Начинаем работу и избавляемся от закрытой сетевой библиотеки Сегодняшняя статья – не восклицание: «Смотрите, какой мне красивый проц попался». Это скорее просто упорядочивание накопленных сведений о конкретном процессоре CH579. Вдруг кому пригодится. Ну, и, если через годы мне потребуется, я сам буду восстанавливать знания по этой ст...

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

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

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

Обучаем SVTR-Tiny для распознавания текста сцены Сегодня мы расскажем вам, как дообучить новую state-of-the-art модель SVTR-Tiny для распознавания текста сцены (текста в реальных уличных условиях) на собственноручно сгенерированных изображениях с помощью API библиотеки PaddleOCR. Читать далее

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

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

Удивительно, но оказалось, что Exynos 2200 быстрее Snapdragon 8 Gen 2 в тесте с трассировкой лучей Exynos 2200 была первой смартфонной однокристальной системой с поддержкой аппаратного ускорения трассировки лучей. С момента анонса пока ещё актуальных флагманов Samsung прошёл уже почти год, но за это время эту особенность особо не обсуждали, потому что соответствующих...

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

#4 Нейронные сети для начинающих. Sudoku Solver. Судоку. Часть 1 Предыстория: одним зимним вечером, а скорее ночью, мне пришла в голову интересная идея. Почему бы не попробовать автоматизировать с помощью компьютерного зрения решение одной классической головоломки с числами, а если быть точнее — судоку. Дело в том, что мой дедушка — боль...

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

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

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

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

Разбираемся в асинхронности: где полезно, а где — нет? Привет! Меня зовут Артём, я backend-разработчик в KTS. Я занимаюсь проектами, где повсеместно используется асинхронное программирование, и веду курсы по нему в нашей школе Metaclass.Сегодня я постараюсь объяснить, что такое асинхронное программирование, зачем оно нужно, каки...

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

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

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

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

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

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

Лучшие языки программирования для изучения в 2023 году | Голосование Программирование постоянно развивается, а с ним и языки программирования, которые используются разработчиками. Чтобы быть успешным в мире IT, важно выбрать актуальный и востребованный язык программирования для изучения. Мы решили провести голосование, чтобы выяснить, какие я...

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

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

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

Справочники и документы. В чем сила 1С Много узкоспециализированных объектов или небольшое количество универсальных? Истина, как обычно, посередине. Справочники и документы в 1С - это пример удачного попадания в эту середину. Разумеется, речь не о том, что видит пользователь, а о том, чем оперирует разработчик. ...

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

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

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

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

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

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

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

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

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

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

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

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

192 ядра RISC-V и техпроцесс 5 нм. Представлен процессор Veyron V1 Архитектура RISC-V в последнее время мелькает в новостях не так часто, как Arm, особенно, когда речь идёт о высокопроизводительных решениях. Но сегодня компания Ventana Microsystems представила Veyron V1 на основе такой архитектуры, и он якобы нацелен на борьбу с с...

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

Знакомство с указателями в Паскале Всем читателям habr.com, привет! Мы студенты Технического ВУЗа- Мария и Екатерина, и хотим рассказать о своем опыте работы с указателями на языке программирования Паскаль.Знакомство с указателями произошло еще на первом курсе, когда нам читали предмет по языку программирован...

Developer app analytics: аналитика приложений для разработчиков Это способ управления данными для вашего приложения. Обычно это делается с помощью таблиц базы данных, но с растущим количеством вариантов это может быть не всегда необходимо. Используя Developer app analytics - AppRank можно провести анализ.На что обратить вниманиеАналитика...

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

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

Пишем и отлаживаем приложения для Flipper Zero Недавно я получил свой флиппер и, решив написать первое приложение, столкнулся с проблемой отсутствия информации по отладке программного кода. Есть несколько статей по разработке приложений для флиппера (первое приложение и приложение HewViewer). Однако, когда я приступил к ...

[Перевод] Как можно ускорить Python сегодня Python не перестаёт удивлять многих своей гибкостью и эффективностью. Лично я являюсь приверженцем С и Fortran, а также серьёзно увлекаюсь C++, поскольку эти языки позволяют добиться высокого быстродействия. Python тоже предлагает такие возможности, но дополнительно выделяе...

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

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

На что будут способны нейросети в 2023 году: показываем на примере GPT-4 Компания Open AI может представить нейросеть GPT-4 уже в середине марта В конце 2022 года компания OpenAI запустила бота ChatGPT, который умеет писать текст по любому запросу. Например, его можно попросить написать реферат, сочинить стихотворение или рассказ, придумать код н...

JEP-400 или UTF-8 РєРѕРґРёСЂРѕРІРєР° РїРѕ умолчанию Не прошло и пяти лет, как в Java 18 докатилось небольшое, но очень ожидаемое и обсуждаемое изменение: теперь во всех стандартных API используется UTF-8 кодировка по умолчанию. Это изменение, которое сделает выражение «Write once, run anywhere» действительно правдой, так как ...

RCE-уязвимость в библиотеке JsonWebToken представляла угрозу для 22 000 проектов Разработчики Okta Auth0 устранили RCE-уязвимость в популярной опенсорсной библиотеке JsonWebToken, которая используется в 22 000 проектов и насчитывает более 36 млн загрузок в месяц на NPM.

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

Книга «Head First. Изучаем Swift» Добрый день, Хаброжители! Swift известен как язык разработки приложений, выбранный компанией Apple для iOS, iPadOS, macOS, watchOS и tvOS. Но этим его применение не ограничивается. Swift с открытым кодом набирает популярность как язык системного программирования и программ...

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

Возможности T‑FLEX Электротехника T‑FLEX Электротехника — это система в составе программного комплекса T‑FLEX PLM, предназначенная для проектирования электротехнических изделий различной степени сложности.T‑FLEX PLM обеспечивает единую информационную платформу, внутри которой происходит обмен данными с други...

ИИ, нейросети и высоконагруженные системы: чему VK и ВШЭ учат студентов Привет, Хабр! Меня зовут Анна Степанова, я директор по образовательным проектам в VK. Недавно мы совместно с Высшей школой экономики создали Инженерно-математическую школу (ИМШ). Цель ИМШ — дать студентам IT-специальностей возможность познакомиться с реальными исследовательс...

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

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

[recovery mode] Задача про рыцарей и лжецов Задачи про рыцарей и лжецов - это классические математические задачи на комбинаторику.Жили-были на одном небольшом островке в океане два племени — рыцари и лжецы. Рыцари были настолько горды и благородны, что не могли говорить ничего, кроме правды, правды и только правды. А ...

Мой диплом, или Как собрать вещи и переехать на YDB Меня зовут Арслан, в этом году я делал сервис для построения циклов заказа (например, заказа такси). Возможно, вы видели пост от другого разработчика в команде, Ильи Lol4t0. Всего сервис обрабатывает примерно 5000 RPS с задержкой 100 мс в 99 перцентиле. Раньше для хранения д...

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

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

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

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

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

Какую статью на Hi-News.ru написала нейросеть ChatGPT Нейросеть ChatGPT написала текст для Hi-News о несуществующем исследовании Да, такова нынешняя реальность, нейросети добрались и до Hi-News. Если вы следите за новостями на нашем сайте, то наверняка видели публикацию от 01.04.2023, которая называлась “Остановить старение и п...

[recovery mode] Как использовать промты в ChatGPT для генерации кода на Python Привет, друзья! Сегодня я хочу рассказать вам о том, как использовать промты в ChatGPT для создания программного кода на Python. Если вы работаете с Python или интересуетесь программированием, то вы, наверняка, знаете, насколько важно уметь быстро и эффективно создавать код....

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

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

Сортировка слиянием — не так просто, как кажется В одной конторе соискателю на позицию Senior C# developer выдали тестовое задание: отсортировать файл со строками определенного формата.Требования такие:* Формат строки: число, точка, пробел, далее любые символы до конца строки* Порядок сортировки — сначала сортируем текстов...

[Перевод] Создаём и сохраняем ссылки на игровые объекты (сущности) в C++ и Lua Очень часто возникает проблема с обработкой ссылок на игровые объекты (назову эти объекты сущностями). Иногда речь идёт об отношениях «предок-потомок» между сущностями. Бывает, что полезно сохранить ссылку на объект при работе с данными о событиях, в классе планировщика зад...

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

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

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

В сборке Windows 11 Insider Preview Build 25262 по умолчанию включены обновления Moment 3 и Moment 4 Одним из основных изменений, произошедших с Windows 11 22H2, является возврат к трехлетнему циклу разработки крупных обновлений Windows. Когда вышла версия Windows 11 21H2 (исходный релиз), был запланирован ежегодный цикл выпуска обновлений функций. Вместо этого, как мы все ...

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

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

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

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

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

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

[Перевод] Как сделать бесконечный круговой CSS-слайдер Слайдеры изображений, также известные как карусели картинок, очень распространены. Есть множество вариантов обычного CSS-слайдера, в котором изображения смещаются слева направо (или наоборот). Можно использовать JavaScript-библиотеки для создания красивых слайдеров со сложн...

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

«Разделяй и властвуй» для OpenStreetMap мира в PostgreSQL Продолжу рассказ "Как поместить весь мир в обычный ноутбук: PostgreSQL и OpenStreetMap" секретами о геоданных OpenStreetMap, на которых множество компаний построили бизнес но не все делятся подробностями... Что ж, сегодня приоткроем завесу!База данных в PosgreSQL после загру...

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

Поэтический редактор: Rust + Tauri В чём-то сочинение стихов похоже на написание кода — имеет значение только "чистый" текст — и этот текст, как и код, подчиняется определенным правилам. Поэту могли бы пригодиться те самые "автоподсказки" и подсветка кода стихов. Может, даже с какой-то поддержкой рефакто...

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

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

[Перевод] Создаём и настраиваем собственную CDN Задача этого репозитория — создать свод знаний о том, как работают CDN, написав одну из них «с нуля». CDN, которую мы будем проектировать, использует следующие технологии: Nginx, Lua, Docker, docker-compose, Prometheus, Grafana и wrk. Мы начнём с создания одного бэкенд-сер...

Недорогие геймерские ноутбуки нового поколения станут намного мощнее. Появились первые тесты GeForce RTX 4070 Laptop и RTX 4060 Laptop Мы уже видели, на что способны мобильные видеокарты GeForce RTX 4080 Laptop и RTX 4090 Laptop. Теперь появились результаты тестирования RTX 4070 Laptop и RTX 4060 Laptop.  Согласно данным китайского производителя ноутбуков Mechrevo, RTX 4070 Laptop быстрее RTX 307...

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

Книга «Математические алгоритмы для программистов. 3D-графика, машинное обучение и моделирование на Python» Приветствуем вас, дорогие Хаброжители! Неважно, чем вы занимаетесь — большими данными, машинным обучением, компьютерной графикой или криптографией — без математики вам не обойтись! Везде сейчас требуются базовые знания и понимание алгоритмов. Практические примеры позволят ...

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

[Перевод] Rust 1.66.0: дискриминанты для перечислений с полями, black_box, cargo remove Команда Rust рада сообщить о новой версии языка — 1.66.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.66.0 ва...

OLIMEX ESP32-EVB: красный квадрат (плата принята) Сегодня мы рассмотрим один интересный контроллер из моей коллекции, это (широко известная в узких кругах) плата OLIMEX ESP32-EVB. Это одна из первых плат, построенных на основе ESP32, которая за прошедшие годы претерпела несколько ревизий и выпускается до сих пор, то есть ...

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

C3 Solutions в финале Национальной премии «ЦОДы.РФ» Команда C3 Solutions покорила профессиональное сообщество отрасли дата-центров своими достижениями и яркими проектами, которые представила на Национальной премии «ЦОДы.РФ». Они собрали более 300 голосов и прошли в финальный этап голосования конкурса. Компания C3 Solutions –...

Suggestion: Чего не хватает в принципах тестирования Привет! Меня зовут Андрей Небольсин, я Старший Тестировщик на проекте Сбер МегаМаркет. Мой опыт в QA-сфере относительно небольшой, тем не менее я думаю, что у меня есть, чем поделиться :-) Читать далее

ЭлектроМаша 2.0 или как мы упаковали Performance Review в чат-бота Привет! Меня зовут Артём, я бэкенд-разработчик в KTS.Наш главный HR Мария Ковылина и я приглашаем почитать: как мы проводим ревью, с какими проблемами сталкиваемся и как смогли автоматизировать процесс с помощью Telegram-бота. Стабильно, зимой и летом, мы проводили perf...

Доля бракованных референсных Radeon RX 7900 XTX может превышать 10% Проблема с видеокартами Radeon RX 7900 XTX может иметь существенно больший масштаб, чем считалось ранее.  Сама AMD недавно говорила, что проблема с испарительной камерой затронула совсем небольшую долю референсных адаптеров, и это лишь несколько процентов от общег...

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

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

Пресс-релиз сборки Windows 11 Insider Preview Build 23419 Компания Microsoft выпустила сборку Windows 11 Insider Preview Build 23419 для инсайдеров в Dev Channel. Microsoft выпускает ISO-образы для этой сборки — их можно скачать здесь . Что нового в сборке 23419 Создание дампов памяти ядра в реальном времени в диспетчере задач Micr...

Nvidia заявила о явном превосходстве над AMD и Intel по количеству выпускаемых драйверов Шон Пеллетье, старший менеджер по продуктам Nvidia, поделился интересной статистикой о выпусках новых драйверов для видеокарт, а также привел статистику конкурентов. Пеллетье заявил, что Nvidia значительно опережает AMD и Intel по выпускам WHQL-драйверов, сертифицирова...

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

IIoT-решения для ESG — 3 сценария, в которых беспроводные датчики помогают жить и работать Привет! Меня зовут Юстина, я владелец продукта IIoT в компании СИБУР. В этом посте я расскажу про то, как LoRaWAN, беспроводные датчики, ловкость рук и слаженная работа разных подразделений может помочь и окружающей среде, и живущим неподалеку от наших объектов людям, и рас...

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

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

[Перевод] Запуск Stable Diffusion локально и в облаке с помощью Diffusers и dstack Вероятно, все уже слышали о Stable Diffusion - модели, способной создавать фотореалистичные изображения на основе текста. Благодаря библиотеке diffusers от HuggingFace, использование этой модели очень просто.Однако организация проекта и зависимостей для его запуска независим...

Windows 11 Pro скоро по умолчанию отключит небезопасную гостевую аутентификацию SMB Начиная с Windows 11 Insider Preview Build 25276, редакции Windows Pro по умолчанию отключают откат небезопасной гостевой аутентификации SMB. Гостевые входы в систему не требуют паролей и не поддерживают стандартные функции безопасности, такие как подпись и шифрование. Разре...

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

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

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

Ruby под нагрузкой, или Как поменять Puma на Falcon за неделю до релиза Всем привет! Меня зовут Александр Шерман, я тимлид в команде CRM в Самокате. Мы в первую очередь известны по своей модели доставки заказов от 15 минут. Чтобы укладываться в такой норматив, у нас достаточно жёсткие SLA (2,5 минуты на сборку заказа), что, в свою очер...

В Microsoft 365 добавили GPT-4. ИИ поможет писать в Word и создавать презентации в PowerPoint Компания Microsoft представила ИИ-помощник Copilot, который входит в состав пакета приложений Microsoft 365. Этот помощник основан на GPT-4 от OpenAI и представляет собой чат-бот, который будет появляться в боковой панели. Источник: Microsoft Отмечается, что новинка по...

[Перевод] Rust 1.67.0: #[must_use] для Future, смена реализации mpsc Команда Rust рада сообщить о новой версии языка — 1.67.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.67.0 ва...

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

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

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

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

Valve добавила экспериментальный раздел в Steam для просмотра дополнений к играм в библиотеке пользователя Кажется, это должно быть удобно.

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

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

C3 Solutions – будущий лидер отрасли ЦОД? Чудо-женщина, мужчина с обложки глянцевого журнала, оборудование, которое в России производит только одна компания, – это всё C3 Solutions. Все самое новое и интересное о своих проектах C3 Solutions показали в Национальной премии «ЦОДы.РФ».  Компания C3 Solutions традиционн...

Пресс-релиз сборки Windows 11 Insider Preview Build 25276 Компания Microsoft выпустила сборку Windows 11 Insider Preview Build 25276 для инсайдеров в Dev Channel. TL;DR • Microsoft выпускает ISO-образы для этой сборки — их можно скачать здесь ; • Сборка включает в себя изменение для диспетчера задач, улучшения на странице учетной з...

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

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

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

Что суды думают о Jira, Redmine, Gitlab и других системах для разработки Jira, Redmine — популярные системы постановки задач в IT-среде, а Gitlab – одно из самых известных хранилищ данных среди программистов. Их используют повсеместно. Возникает вопрос – можно ли использовать данные из систем как доказательства в суде? Читать далее

Как врач сделал себе ИИ помощника Всем привет, меня зовут Александр и я врач-гематолог. Для справки, это тот, кто занимается болезнями крови. Мой общий стаж перевалил за 16 лет, я кандидат медицинских наук и последние пару-тройку лет интересуюсь анализом данных, machine learning и ИИ в медицине. Под "интерес...

Первый удар человечества по астероиду выбил из последнего до 10 000 тонн породы Первый удар человечества по астероиду, как мы знаем, оказался успешным. Теперь появились новые подробности о том, насколько именно.  Космический аппарат DART при ударе по астероиду Диморф выбил из последнего не менее 1000 тонн породы. Расчёты показывают, что макси...

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

Классика, визуализация и GNN: три решения для ML-модели с графовыми данными Большинство современных нейросетей построены на основе графовых данных. Однако чтобы спроектировать на их основе сложную систему, ML-модель должна уметь эти данные векторизировать, а это далеко не тривиальная задача.  Мы задали ее командам-участникам хакатона «Цифровой пр...

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

Epic Games отказалась вручную добавлять игры в библиотеку EGS — теперь это может сделать сам разработчик С помощью специального инструмента.

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

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

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

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

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

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

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

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

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

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

[Перевод] Rust 1.68.0: разреженный протокол cargo, локальный pin, обработчик ошибок аллокации Команда Rust рада сообщить о новой версии языка — 1.68.0. Rust — это язык программирования, позволяющий каждому создавать надёжное и эффективное программное обеспечение. Если у вас есть предыдущая версия Rust, установленная через rustup, то для обновления до версии 1.68.0 ва...

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

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

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

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

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

[Перевод] Всё про USB-C: ответ через протокол PD В последней статье мы настроили FUSB302 на получение сообщений USB PD и успешно получили «оповещение о возможностях» от БП с USB-C. В этой же статье мы обратимся к спецификации PD, спарсим сообщение, после чего создадим ответ, который заставит БП подать максимально возможно...

Постквантовый переход: DH, RSA, ECDSA ->? Google Tensor Processing Unit 3.0 Проблемы постквантовой криптографии — это хороший пример ситуации, когда в салоне первого класса ещё играет приятная музыка и разносят напитки, но корабль уже плывёт к айсбергу в нужном направлении. Google, Amazon, Microsoft и другие кру...

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

Как смартфоны на Snapdragon 8 Gen 2 похоронили прошлогодние флагманы Каждый год, когда начинается производство новых процессоров, мы слышим от производителей, что свежее решение стало мощнее, энергоэффективнее и просто лучше. Но, увы, подобные фразы часто остаются на бумаге, а на практике мы получаем если не ухудшение характеристик, то как м...

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

Интервью с игровой инди-студией Baba Yaga Games Всегда интересно заглянуть за кулисы театра, на съёмочную площадку или попасть в студию разработки игры в разгар создания очередной компьютерной игры. Случайно попавшаяся мне новость про разработку новой игры российской студии Baba Yaga Games натолкнула меня на мысль: а поче...

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

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

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

OpenAI: утечка данных пользователей ChatGPT произошла из-за ошибки Redis Представители OpenAI рассказали, что недавний сбой в работе ChatGPT (пользователи видели личную информацию других людей и чужие запросы к ИИ) произошел из-за ошибки клиентской опенсорсной библиотеки Redis. Глава OpenAI Сэм Альтман заявил, что все в компании чувствуют себя «у...

Микрофронтенды — универсальное решение всех проблем или просто удобный подход? Сейчас понятие «микрофронтенды» встречается довольно часто, но что это такое и какие задачи они решают? Зачем нам микрофронтенды, если есть микросервисы или монолит? И стоит ли тащить микрофронтенды в свой проект только потому, что это модно? Расскажу об этом, а также о трёх...

Как выбраться из долговой ямы Российские мужья, по статистике социологического исследовательского центра “Electra”, в случае попадания в долговую яму, в 83.7% случаев остаются там навсегда, сайт https://bankiros.ru/credits/na-karty поясняет, как исправить эту ситуацию и впредь не попадать в нее, оформляя...

Tutorial по стандартному и нестандартному обмену сайта с 1С. Часть первая: стандартный обмен и его хитрости В жизни наши желания часто расходятся с нашими возможностями. Приходится искать компромисс. Так происходит и при интеграции интернет-магазинов с 1С. Хочется реалтайма, интеграции с программой лояльности, полного отсутствия коллизий и омниканальности (простите).Мы решили...

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

[recovery mode] SwiftUI ScrollView и параллакс без тормозов Передо мной возникла задача сделать скроллируемый контент, на заднем плане которого прокручивается другой контент. Прокрутка должна быть синхронной, но с замедленной скоростью - как отдалённый фон в мультфильмах или играх.В классическом UIScrollView из UIKit можно реализоват...

Энтузиасты уже играют в OXENFREE от Netflix OXENFREE — мобильная игра, в которую можно поиграть на iOS и Android, только для этого надо иметь активную подписку от Netflix. Отметим, что официально это сделать в РФ не получится. Тем временем мобильные геймеры умудрились запустить OXENFREE с вырезанной лицензией. Отметим...

Кэша много, толка – мало. По данным тестов самой AMD, Ryzen 9 7950X3D всего на 6% быстрее более доступного Core i9-13900K В Сеть слили результаты тестов игрового процессора Ryzen 9 7950X3D, причем тесты эти проводили в самой AMD. Производительность измеряли в большом количестве игр, данные сравнивали с производительностью Ryzen 9 7950X и Core i9-13900K. И каков же главный итог? Судя по вс...

Как понять, зачем люди устраиваются к вам работать и почему они увольняются Привет! Я Дмитрий Шувалов, руководитель компании УМ. Наша компания входит в экосистему AGIMA и занимается исследованиями клиентского опыта. Одна из наших сильных стороны — этнография труда. Моя коллега Ольга Пинчук координирует это направление и недавно написала статью об эт...

Справился за 44 минуты. ChatGPT уже улучшил приложение «Альфа-Банк» и продолжает это делать Представители «Альфа-Банк» в официальном Telegram-канале рассказал о том, что популярный чат-бот ChatGPT уже используется разработчиками фирменного мобильного приложения. Делаем мобильный банк с помощью искусственного интеллекта. Это как? Используем ChatGPT ...

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

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

Unity UI Toolkit: MVVM ннада? Ни для кого не секрет, что Unity сейчас активно работают над новой системой создания пользовательского интерфейса UI Toolkit. Это инструмент разработки интерфейсов вдохновлённый стандартными подходами веб-разработки.И всё бы хорошо, но какого было моё удивление, что, продела...

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

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

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

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

До 60 ядер, до 64 ГБ памяти HBM2e и цена до 17 000 долларов. Представлены CPU Intel Xeon Scalable поколения Sapphire Rapids Компания Intel полноценно представила серверные процессоры Max Series, которые первоначально анонсировала ещё в ноябре, но тогда многие подробности остались за кадром. Теперь же все карты раскрыты.  Итак, речь идёт о четвёртом поколении CPU Xeon Scalable, которое ...

Дайджест научпоп-новостей за неделю, о которых мы ничего не писали Здравствуйте, с вами Вячеслав Голованов, и я курирую поток «Научпоп» на Хабре. Среди моих задач — увеличение количества публикаций в этом потоке, в том числе через привлечение новых, хороших авторов на Хабр. Если вы всегда хотели написать статью на научно-популярную тему, но...

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

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

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

Интерфейсы и протоколы в IoT. Лекция первая В этом году меня в очередной раз позвали в Московский институт электроники и математики (МИЭМ) НИУ ВШЭ читать студентам магистратуры (четвёртый курс на наши деньги) департамента электронной инженерии курс «Обеспечение взаимодействия элементов системы IoT, интерфейсы и проток...

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

[Перевод] Перевод первой части учебника Patterns.dev Привет! Меня зовут Айнур, и я frontend-разработчик SimbirSoft. Более 6 лет я работаю над коммерческими проектами, создаю и улучшаю интерфейсы, поэтому в работе достаточно часто использую паттерны проектирования. Неоднократно я обращался за идеями и лайфхаками к книге Pattern...

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

Компания Microsoft выпустила Windows 11 Build 22000.1696 Компания Microsoft выпустила Windows 11 Build 22000.1696. Это обновление безопасности включает улучшения, которые вошли в состав обновления KB5022905 (21 февраля 2023 года) . При установке этого KB: • Это обновление реализует третью фазу усиления защиты Distributed Component...

Microsoft выпустила Windows 11 Build 22621.1413 Компания Microsoft выпустила Windows 11 Build 22621.1413. Это обновление безопасности включает улучшения, которые вошли в состав обновления KB5022913 (28 февраля 2023 года). При установке этого KB: • Это обновление реализует третью фазу усиления защиты Distributed Component ...

[Перевод] Понять TypeScript c помощью теории множеств Я пишу на TS уже довольно давно. Но некоторые вопросы все еще сбивают меня с толку: что такое never, и почему он так странно себя ведет? Чем отличаются any и unknown? Почему const x: {} = true — не ошибка? Оказывается, если перевести TS на язык теории множеств, всё встанет н...

Huawei может снова начать производить Kirin и вернуть былое лидерство В последних сообщениях говорится, что чипов Huawei Kirin нет в наличии. Некоторые из этих чипов можно найти в серии Huawei Mate 30, серии P40 и в других устройствах. Чипсет Kirin стал для Huawei возможностью освободиться от зависимости от флагманских чипов Snapdragon. Дела ...

Как студент пытался поднять качество образования в ВУЗе и что из этого получилось (спойлер: ничего) Как говаривал Уинстон Черчилль: "Кто в молодости не был революционером — у того нет сердца. Кто в старости не стал консерватором — у того нет мозгов". Насчет того, появились ли у меня мозги - вопрос открытый и по сей день, а вот насчет своего неудачного опыта Че Гевары в обл...

Компиляция карт для Half-Life 1 на ТВ-приставке Я уже не первый год занимаюсь моддингом легендарной Half-Life 1, и как-то совершенно спонтанно мне пришла в голову мысль, дескать, как было бы прикольно иметь возможность компилировать карты на какой-нибудь платформе, отличной от привычных всем x86 и amd64. Затем я вспомнил,...

AMD, куда ещё мощнее? Новые процессоры Ryzen могут быть на 30% производительнее Ryzen 7000, если сбудутся прогнозы бывшего архитектора AMD Известный бывший архитектор AMD и Intel Джим Келлер (Jim Keller) поделился своими прогнозами относительно архитектуры AMD Zen 5, которая станет основой процессоров Ryzen следующего поколения.  Неясно, на каких данных основаны прогнозы Келлера, но выглядят они весь...

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

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

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

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

Выпущена многоязычная бета MIUI 14 для 19 моделей смартфонов Xiaomi, Redmi и Poco Проект Xiaomi EU европейского сообщества выпустил многоязычную версию бета-версии прошивки MIUI 14. Она построена на базе китайской версии и устанавливается через режим Fastboot. Полный перечень устройств, для которых Xiaomi EU выпустил многоязычную бету MIUI 14, предс...

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

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

Юнит-Экономика — главное о метрике CLV (Customer Lifetime Value) В многочисленных публикациях о метрике CLV (Customer Lifetime value) разные авторы дают разные определения метрики, используют разные обозначения и подходы в зависимости от решаемой задачи, более знакомого им контекста и понятийного аппарат...

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

История про Growth hacking на практике Всем привет! Меня зовут Андрей Никишин, я бэкенд-разработчик hh.ru в команде “Карьерные сервисы”. Существует распространенное мнение, что hh — это просто сайт с вакансиями и резюме, но это совсем не так.  У нас есть множество сервисов: от досуга и развлечений до построе...

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

Прокси хранилища 1С (IIS, OneScript) В этом посте мы поговорим о том, как избавиться от версионной зависимости, проверять комментарии, вызывать веб-хуки и делать красивые пути. И все это на привычном IIS и понятном OneScript.Для чего, зачем и почемуВо всех командах разработки рано или поздно возникает потребнос...

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

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

Управление инфраструктурой ЦОД: топ-10 поставщиков DCIM-решений Индустрия ЦОД быстро растет, подпитываемая устойчивым спросом государственных структур, коммерческих предприятий и широкой общественности на цифровые услуги. Однако удовлетворение спроса клиентов, демонстрирующих растущий аппетит к более быстрым и устойчивым инструментам для...

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

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

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

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

Более половины компаний в России удовлетворены российскими ИБ-технологиями Наиболее часто компании испытывают сложности на проектах по внедрению российских средств защиты из-за отсутствия их совместимости с последними версиями отечественных операционных систем и платформ виртуализации (45%). На втором месте в списке распространенных проблем — недос...

[Перевод] Инструменты наблюдаемости, о которых нужно знать в 2023 году Когда организации переходят в облако, их системы тоже начинают стремиться к распределённым архитектурам. Один из самых распространённых примеров этого — использование микросервисов. Однако это также создаёт новые сложности с точки зрения наблюдаемости. Необходимо подбирать...

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

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

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

На рынок вышел первый продукт на основе 48-ядерных CPU Baikal-S. Это СДХ компании «Элпитех» Российская компания «Элпитех», как сообщает ресурс CNews, выпустила первую на рынке систему хранения данных, основанную на серверных процессорах Baikal-S.   Это новейшие CPU в линейке, насчитывающие 48 ядер Cortex-A75 и производящиеся по техпроцессу 16...

[Перевод] Заметка о хуке useSyncExternalStore Hello, world! Представляю вашему вниманию перевод этой замечательной статьи. useSyncExternalStore — это один из хуков, представленных в React 18. Наряду с хуком useInsertionEffect, он считается хуком для библиотек (library hook): Следующие хуки предназначены для авторов би...

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

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

Aspia — бесплатная программа для удаленного управления ПК Aspia - это OpenSource приложение под лицензией GPL-3.0 для удаленного управления компьютерами внутри локальной сети и за её пределами благодаря реализации ID сервера для обхода NAT.Не нашел на хабре актуальной информации об этом бесплатном аналоге таких программ как TeamVie...

Пресс-релиз сборки Windows 11 Insider Preview Build 23403 Компания Microsoft выпустила сборку Windows 11 Insider Preview Build 23403 для инсайдеров в Dev Channel. Microsoft напоминает, что перезагрузила Dev Channel, чтобы начать релиз сборок серии 23000, как было объявлено ранее на этой неделе . Примечание: Инсайдеры Windows, котор...

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

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

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

В российский реестр программного обеспечения включено решение IT ГРУППЫ ОТКРЫТИЕ Программное обеспечение IT ГРУППЫ ОТКРЫТИЕ ITgo 2.0 вошло в российский реестр IT-решений в декабре 2022 года. Мониторинг серверных показателей и передача значения системным администраторам – основная задача ПО. Контроллер ITgo 2.0 – это одноплатный компьютер Raspbery Pi с не...

Dell Latitude CPx, ноутбук не из «Матрицы» Моя любимая категория ретроноутбуков — модели, выпущенные в самом конце девяностых и начале нулевых. Именно тогда в портативных компьютерах сложилась уникальная комбинация фич. Достаточно мощные процессоры Pentium III, которые потом у кого-то продержались до середины-конца н...

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

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

[Перевод] Топ vendor-neutral инструментов для работы с IaC Перевод оригинальной статьи, где автор пишет о подходе Infrastructure as Code с его основными концепциями, оценивает преимущества такого подхода и сравнивает главные инструменты для работы с IaC на сегодняшний день: Terraform, Pulumi и Crossplane. Читать далее

Citizen Data Scientist в ЕВРАЗе: «войти в айти» здорового человека Говорят, что в России и в мире дефицит IT-специалистов. Врут, разумеется. Специалистов достаточно, просто IT-задач слишком много.С другой стороны, иногда задача вроде бы есть, а на самом деле её нет. Кажется, вот тут используешь machine learning — и станет хорошо. А на деле ...

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

AMD утверждает, что мобильный процессор Ryzen 9 7940HS на 30% быстрее, чем Apple M1 Pro На CES 2023 компания AMD объявила о новых процессорах для ноутбуков. Как утверждается, новые чипы серии Ryzen 7040 на 30% быстрее, чем M1 Pro, который позволяет ноутбуку проработать до 30 часов на одном заряде. Если точнее, такой прирост быстродействия характерен для ст...

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

Слово vs Понятие и Почему специальные методики запоминания слов — баловство Представим, что англичанин учит русский язык и сталкивается со словом «стол». Ему объясняют, что это и table, и desk (письменный). Ну ок. Затем встречает где-нибудь «паспортный стол». Стол?? Видит в супермаркете вывеску «Стол заказов», но там внезапно нет никакого стола, а е...

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

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

GeForce RTX 4080 Laptop может быть намного быстрее RTX 4090 Laptop. Большой тест видеокарт с разными лимитами мощности показывает, на что способен каждый вариант Вчера мы видели сравнение настольной GeForce RTX 4090 с мобильной, а сегодня посмотрим, насколько отличаются мобильные RTX 4090 Laptop и RTX 4080 Laptop.   Для анализа авторы ресурса ComputerBase взяли ноутбуки MSI Titan GT77HX V13 и XMG Neo 16 E23. Первый оснащён...

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

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

Система жидкостного охлаждения DeepCool LT720 с радиатором на три вентилятора 120 мм и многоцветной многозонной подсветкой помпы На основе системы жидкостного охлаждения DeepCool LT720 можно создать условно бесшумный компьютер, оснащенный процессором типа Intel Core i9-7980XE, если потребление процессора под максимальной нагрузкой не будет превышать 285 Вт, а температура внутри корпуса не повысится вы...

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

Авторизация OAuth 2.0 от Google, небольшое упущение его разработчиков и Python С большинством сервисов Google можно взаимодействовать через открытый API (Application programming interface). Чтобы использовать возможности взаимодействия по максимуму, требуется пройти полную авторизацию (OAuth 2.0). Но в отличие от подобных процедур авторизации, скажем, ...

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

Как всё успеть? | Мой тайм-менеджмент Прежде чем начать говорить про тайм-менеджмент и как всё успевать, начну с плохой шутки про электрика. Как определить является электрик хорошим или плохим? Правильно! Любой живой электрик автоматически хороший. Теперь немного обо мне. Я работаю преподавателем в университете,...

Причины минусов в карму и история голосов v2.01 Как-то заглохла тема голосов в карму и к статьям. Такое впечатление, что после публикации Причины минусов в карму и история голосов всех все устроило (нет).Заодно, немного поговорим о дизайнеВ этой короткой заметке я попробую объяснить, почему существующее решение ...

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

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

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

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

Apple рассказала о десяти крутых фишках iPhone с iOS 16 Для тех, кто только перешел на Айфон, эти советы будут наиболее актуальны. Уже скоро Новый год, и многие найдут под елкой новый Айфон. Для кого-то это будет уже не первое устройство Apple, а кто-то наоборот, впервые испытает удовольствие от распаковки Айфона. Но все дело в т...

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

Материалы python-митапа: Go для питонистов, syslog и контейнерные рантаймы Привет, Хабр! Этот пост — отчёт с митапа Moscow Python x YADRO. Мы обсуждали отличия языков Python и Go, подробно разобрали работу с протоколом syslog и почти написали свой Docker. Если вам интересны эти темы — заходите под кат, там вы найдёте видеозаписи...

Алгоритм HyperLogLog, или Оцениваем мощность множества за O(1) Привет, Хабр! Меня зовут Максим, я учусь на третьем курсе МФТИ. Этим летом я участвовал в студенческой программе, которую проводила команда Tarantool. Если кратко, суть программы в том, чтобы самостоятельно или в команде решить исследовательскую задачу в определенный срок....

Revopoint POP2. Дорога к первому 3D-сканеру. Приветствую вас, уважаемые читатели! Я не могу назвать себя завсегдатаем 3D-Today, да и времени на написание статей не так много, как хотелось бы. Но, надеюсь что этот материал будет вам полезен и придется по душе. Изначально, планировал написать обзор на 3D-сканер. Но так к...

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

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

Пресс-релиз сборки Windows 11 Insider Preview Build 25284 Компания Microsoft выпустила сборку Windows 11 Insider Preview Build 25284 для инсайдеров в Dev Channel. TL;DR • Эта сборка не будет доступна для устройств Arm64 из-за известной проблемы (перечисленной ниже), которая приводит к зависанию устройств на логотипе загрузки ОС; • ...

Пресс-релиз сборки Windows 11 Insider Preview Build 25295 Компания Microsoft выпустила сборку Windows 11 Insider Preview Build 25295 для инсайдеров в Dev Channel. TL;DR • Эта сборка включает в себя новую коммерческую политику и хороший набор улучшений и исправлений; Что нового Новая коммерческая политика: Включите функции, представ...

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

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

[ВИДЕО] Хакатон 2022 Доброго всем дня!11-13 ноября в Уфе прошли соревнования Хакатон 2022.Участники Выполняли задание по программированию манипуляторов. Для выполнения задач команды использовали 3D принтеры Hercules G2 и печатали необходимые элементы захвата и т.п.Небольшое видео о том как это б...

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

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

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

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

Конгрессмен США впервые выступил с речью, написанной ChatGPT ChatGPT проникает всё в более глубокие сферы жизни. Два дня назад конгрессмен Джейк Очинклосс (Jake Auchincloss) первым в истории выступил в зале Палаты представителей с речью, написанной нашумевшим чат-ботом.  В данном случае речь идёт не о скандале — ...

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

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

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

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

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

Разработка «Авроры» за счет налогоплательщиков отменяется: VK, Яндекс, Сбер и Ростелеком будут создавать российскую ОС собственными силами, как заявил Антон Горелкин Зампредседателя думского комитета по информполитике Антон Горелкин рассказал в своем Telegram-канале, что разработкой национальной мобильной операционной системы займутся лучшие специалисты VK, Яндекса, Сбера и Ростелекома, добавив, что финансирование проекта должно осу...

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

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

Как включить перетаскивание вкладок проводника в сборке Windows 11 Build 25290 В последней предварительной сборке Windows 11 есть пара новых виджетов, одно сомнительное изменение в меню «Пуск» и длинный список различных исправлений. Тем не менее, самые интересные изменения скрываются внутри ОС и требуют некоторых умений, чтобы их обнаружить. Как отмеча...

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

Что такое BitTorrent v2, и что с ним произошло? Наверное вы слышали о новом протоколе BitTorrent v2, работа над которым велась с 2008-го года, и наделала шум с выходом второй версии популярной торрент-библиотеки Libtorrent, которой пользуются знакомые вам торрент-клиенты, такие как QBittorrent, Deluge и многие другие. Чт...

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