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

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

Сделали библиотеку компонентов, но пришлось переделывать. Почему так вышло и чем дело кончилось Привет, Хабр. Меня зовут Артем Арефьев, я руковожу Frontend-разработкой в направлении продукта для учеников в Учи.ру. Фронтендом занимаюсь уже 11 лет, шесть из которых работаю у нынешнего работодателя. Еще принимаю участие в проектах Open Source (например, внес вклад в проек...

Учимся создавать простых ботов или туториал по библиотеке TeleBot Начнем с того, что библиотек для разработки телегам-ботов на Python несколько, я упомяну основные три. В первой части статьи будет небольшой обзор этих библиотек (примеры кода тут будут для красоты, не пугайтесь, ниже будет пошаговый Гайд по одной конкретной библиотеке), по...

Библиотека EremexControls.NET для Avalonia UI — Обновление март-апрель 2024 В предыдущей статье мы рассказали о нашей первой версии библиотеки UI контролов для создания мультиплатформенных приложений под Avalonia UI. С тех пор прошло достаточно времени, в течение которого мы продолжали работать над новой версией Delta Design и расширением линейки ко...

Введение в библиотеку Diffusers и диффузионные модели Diffusers — это библиотека от Hugging Face, которая позволяет работать с сотнями предобученных моделей класса Stable Diffusion для создания изображений и аудио.Всегда хотели стать художником, но у вас лапки? :) Тогда Diffusers этот то, что вам нужно!В этой статье рассмотрим ...

Qucs-S: руководство по использованию SPICE-моделей и созданию библиотек Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан с использованием набора библиотек Qt. О принципах работы с Qucs-S рассказывают мои предыдущие статьи. Далее будет рас...

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

Testplane в опенсорсе: автоматизируем пользовательские сценарии в веб-интерфейсах Привет! Меня зовут Евгений Константинов. Я занимаюсь разработкой инструментов автоматического тестирования в Яндексе. В этой статье хочу рассказать про историю создания инструмента TestplaneTestplane поможет вам:- протестировать разные сценарии в любом браузере; - прове...

Удобные формы для Vue 3 Vue + Form. А можно немного попроще...Краткий путь по созданию библиотеки для работы с полями и формами . В статье описан краткий путь от v-modal к чему-то более умному и самостоятельному. Я также поделился своими наработками, чтобы вы могли использовать их у себя в проекте....

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

Зачем и как в Альфе была написана библиотека для скриншот тестов под Android В статье расскажу о проблемах и неочевидных моментах скриншот тестов в контексте Android, и постараюсь погрузить вас в то, как это может работать (и как мы это сделали в Альфе) Что же там дальше

Управляем навигацией во Flutter с помощью библиотеки auto_route: часть 2. Guards, Wrappers и миграция Привет, Хабр! Меня зовут Юрий Петров, я Flutter Team Lead в Friflex. Это продолжение моей статьи про библиотеку auto_route. В этой статье, я попробую пояснить, что такое охранники(guards), обертки (wrappers) и с чем вам придется столкнуться в легаси проектах при миграции на ...

Своё кастомное межсервисное взаимодействие с блекджеком и gRPC Привет, Хабр! Меня зовут Ильяс. Мы с командой делаем собственный Service Mesh в Ozon Tech, и в этой статье я расскажу, как можно за вечер реализовать свое супер кастомное межсервисное взаимодействие. К концу статьи мы с вами напишем современные алгоритмы балансировки, настро...

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

Хватит маппить все руками, используй Mapster Привет, Хабр! Меня зовут Георгий, я С#-разработчик в SimbirSoft. Хочу рассказать об опыте использования библиотеки Mapster: как он может упростить разработку, сэкономить силы и частично избавиться от рутины маппинга.Данная статья подойдет и тем, кто только собирается открыть...

Адаптивный дизайн приложений на Gtk Основные рабочие среды из мира GNU/Linux — это GNOME и KDE Plasma. До недавнего времени их можно было видеть только на десктопах, но сейчас эти окружения можно заметить и на мобильных девайсах. Эти девайсы не слишком распространены. Десктопный Linux встречается гораздо чаще....

database/sql: плохой, хороший, злой Многие Golang-разработчики  пробовали работать с БД в Go, и у каждого — свои боли. В этой статье разберём библиотеку database/sql как безотносительно конкретной СУБД, так и применительно к YDB. Рассмотрим трудности эксплуатации при использовании драйвера database/sql на...

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

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

[Перевод] Perfect DLL Hijacking. Разбор техники Привет, Хабр, на связи лаборатория кибербезопасности компании AP Security!  В статье речь пойдет о такой технике, как DLL Hijacking, а именно как это работает от А до Я.DLL Hijacking - это техника, позволяющая внедрять сторонний код в легитимный процесс (EXE), обманывая...

Какой плащ был у Понтия Пилата? Отвечает GigaChat Всем привет! На связи лид разработки SDK GigaChat’a — Константин Крестников. В этой статье я расскажу о том, что такое GigaChain и как в целом SDK позволяет упростить жизнь разработчика LLM, например, научить LLM давать ответы на вопросы по вашим документам или работать в ре...

NLUX: Библиотека интерфейса Conversational AI В современном мире взаимодействие с компьютерами и приложениями становится все более естественным и удобным благодаря использованию разговорных интерфейсов и искусственного интеллекта. Однако, интеграция таких функциональностей в веб-приложения может стать вызовом для разраб...

Как оптимизировать код на С для x86-процессоров: подсистема кэша и памяти, инструкции AVX-512 Меня зовут Андрей Бакшаев, я ведущий инженер-программист в YADRO. Моя команда занимается разработкой и оптимизацией математических библиотек под архитектуру x86. До этого я 15 лет работал в Intel. Значительная часть моих задач заключалась в том, чтобы реализовывать некоторые...

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

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

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

HypEx и мэтчинг. Эксперимент без A/B-тестирования? Привет, Хабр! Меня зовут Дмитрий Тихомиров, я работаю в блоке «Финансы» в команде разработки HypEx (Hypotheses and Experiments) — open source-библиотеки для Python. Наша команда хотела придумать ёмкое название для фреймворка, чтобы оно отражало суть происходящего и помогало ...

Как создать веб-приложение на базе Telegram Mini Apps Telegram Mini Apps — отличная возможность выйти за пределы обычных ботов и попробовать себя в создании более интересных интерфейсов приложений. На базе этого инструмента можно создать магазин или даже сервис для заказа шавермы. В этой статье познакомимся с Telegram Mini Ap...

Библиотека контролов для Avalonia UI Последний год наша команда работала над кроссплатформенной версией САПР Delta Design. В результате этой работы была создана своя библиотека UI контролов для Avalonia, которая поддерживает как ОС Windows, так и ряд систем Linux, включая российские АстраЛинукс, РедОс, а также ...

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

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

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

Готов ли Swift OpenAPI Generator для продуктивного кода? Привет! Меня зовут Андрей, я iOS-разработчик приложения «Пункт Ozon». С помощью него сотрудники пунктов выдачи Ozon выдают посылки, принимают возвраты, проводят инвентаризации. Мы хотим упростить работу с OpenAPI-спецификациями, внедрив кодогенерацию для автоматического...

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

Call Activity vs SubProcess: В чём отличие? Приветствую моих читателей! Меня зовут Екатерина. Ранее 3.5 года я администрировала bpm-систему, сейчас вот уже более двух лет я работаю системным аналитиком и развиваю нашу собственную bpm-систему. В данной статье хочу рассказать о дилемме, с которой столкнул...

Сколько нужно ядер cpu, чтобы выдержать 30k+ rps? Меня зовут Вадим Ивахин, я техлид в Vi.Tech — это IT-дочка ВсеИнструменты.ру. Я и мои коллеги трудимся над большим количеством проектов и используем в своей работе различные инструменты, в том числе MongoDB. В этой статье я не стану рассказывать о том, что такое MongoDB. Хоч...

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

Room для Kotlin Multiplatform. Пробуем нативное решение Всем привет! На связи Анна Жаркова, руководитель группы мобильной разработки в компании Usetech. В начале мая Google нас порадовали релизами нескольких библиотек для локальных хранилищ. Наконец, в приложения Kotlin Multiplatform можно полноценно использовать Room (версия 2....

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

Почему FilamentPHP — это хорошее решение для создания CMS Привет, Хабр! Меня зовут Егор Черненок, я работаю PHP-разработчиком в AGIMA. В этой статье расскажу вам о FilamentPHP. В документации говорится, что это набор красивых Fullstack-компонентов для Laravel. От себя добавлю, что он отлично подходит для построения CMS. А теперь по...

Возможности JS, о которых вы возможно не знали Всем привет! Меня зовут Леша, я фронтенд-разработчик. Крашу кнопочки, пишу js скрипты, веду канал в TG https://t.me/frontend_tales (подписывайтесь, стараюсь выкладывать полезный материал). В этой статье хотел бы поделиться с вами лайфхаками JavaScript, которые, возможно, пом...

Persistent-request библиотека для надежных запросов Всем привет!В этой статье расскажу, как решил написать библиотеку https://packagist.org/packages/xman12/persistent-request и что там внутри.Как и любая библиотека, эта решает свои задачи, а именно гарантированное выполнение запроса и последующую обработку. Я находил, как мин...

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

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

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

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

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

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

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

Меняем формат розыгрышей призов в Telegram-чатах Привет, Хабр!Меня зовут Денис, и сегодня я расскажу вам о проекте, над которым я и мой друг работали последние 7 месяцев. Называется он PLAY365 — и это наш игровой бот для групповых чатов Telegram.В посте будет много информации: о причинах и эта...

5 полезных JS-библиотек для анимации, которые могут пригодиться в работе Привет, Хабр! Сегодня поговорим о фронтенде, а точнее, о способах улучшения веб-приложения. В этом могут помочь JS-библиотеки для анимации. В подборке их пять, но если вы знаете и другие, причём те, что применяете в работе сами, расскажите о них в комментариях. Читать далее

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

GridStack + Vue 3 composition api Мир всем, на связи ShADAMoV!Сегодня, я бы хотел поведать вам о своём опыте взаимодействия с библиотекой GridStack. Расскажу о странностях и сложностях, с которыми столкнулся в ходе её интеграции во Vue 3 проект. Прежде чем приступим, дисклеймер: автор данной статьи не претен...

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

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

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

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

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

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

Transition Animation: настраиваем анимацию переходов во Flutter Привет! Меня зовут Айдар Мавлетбаев, я Flutter-разработчик в AGIMA. Современное приложение почти невозможно представить без анимации. И один из ее типов — Transition Animation, или анимация переходов. Ее используют, чтобы переход с одной страницы на другую был плавным и крас...

Postman Interceptor — альтернатива классическому сниффингу (краткий гайд по установке и взаимодействию) Привет, хабровчане! У вас было такое, когда снифаешь спокойно трафик через бесплатную версию Charles, а потом появляется окошко через час работы и закрывает программу? А может вы думаете, что переросли функционал других снифферов и хотите попробовать что-то новое и необычное...

Приглашаем на Ozon Tech Community BI Meetup Всем привет!Меня зовут Дмитрий, я руководитель группы разработки инструментов BI. Стоит ли говорить, что данные вокруг нас и, если мы не умеем с ними работать, то мы не можем функционировать как бизнес вообще? Наша команда платформы данных старается обуздать десятки пет...

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

Опечатки, нулевые указатели и коварный таб: 33 фрагмента в библиотеке GTK GTK – популярный фреймворк с открытым исходным кодом для создания графических интерфейсов, который интересно проверять с помощью анализатора PVS-Studio. Тем более, что предыдущую проверку мы делали около 3 лет назад, а значит, наверняка найдём в нём новые ошибки. Очень не х...

Разработка децентрализованных приложений на Spring Boot: инструменты Web3 Tech Привет! Меня зовут Даниил, я разработчик в Web3 Tech. Недавно в JVM-инструментарии для нашей основной платформы «Конфидент» состоялся новый релиз, в который вошли библиотеки клиента для взаимодействия с нодой и Spring Boot стартеры. Далее в посте я расскажу об этих библиотек...

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

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

Анатомия Htmx Hello world! По данным 2023 JavaScript Rising Stars библиотека htmx заняла второе место в разделе Front-end Frameworks (первое место вполне ожидаемо принадлежит React) и десятое место в разделе Most Popular Projects Overall. htmx — это библиотека, которая предоставляет до...

VR-тур на A-Frame + React Всем привет! Меня зовут Егор Молчанов, я разработчик в команде CRM для менеджеров ипотечного кредитования в компании Домклик. Хочу поделиться своим опытом создания VR‑тура с помощью фреймворка A‑Frame и библиотеки React. Для этого написал свой неболь...

Kornia — библиотека компьютерного зрения Kornia это open source библиотека для решения задач компьютерного зрения. Она использует PyTorch в качестве основного бэкенда и состоит из набора дифференцируемых процедур и модулей. Создатели библиотеки вдохновлялись OpenCV, и поэтому Kornia является его аналогом, но при эт...

Байт-код — это просто! Как сделать DI по-настоящему быстрым Привет! Меня зовут Григорий Юрков, и я уже несколько лет работаю в инфраструктурной команде Яндекс Маркета. Два года назад мы начали разрабатывать свой легковесный DI-фреймворк Scout, который предоставляет выразительный Kotlin DSL. Он не генерирует код, а делает вс...

Прогнозирование временных рядов с помощью библиотеки Skforecast В открытом доступе существует огромное число библиотек для построения моделей машинного обучения в Python. Самые популярные — scikit-learn, XGBoost, LightGBM, Catboost, PyTorch. Каждая из них позволяет построить регрессионную модель для прогнозирования на временных рядах, ...

Qucs-S: руководство по видам моделирования, часть 1 Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан на С++ с использованием набора библиотек Qt. О данной программе рассказывают мои предыдущие статьи. Для работы Qucs-S...

Это база: нюансы работы с Redis. Часть 1 Привет! Меня зовут Петр и мы в компании Nixys очень любим Redis. Эта база используется, если не на каждом нашем проекте, то на подавляющем большинстве. Мы работали как с разными инсталляциями Redis, так и с разными версиями, вплоть до самых дремучих, вроде 2.2. Несмотря на т...

Сбер открыл доступ к самой мощной своей нейросети – GigaChat Pro Команда Сбербанка открыла компаниям и разработчикам GigaChat API для доступа к двум моделям фирменной генеративной нейросети — GigaChat Lite и GigaChat Pro. Как отмечают в пресс-службе, GigaChat Lite подойдёт для решения более тривиальных задач, требующих при это...

DVC — прекрасный инструмент для DataScience Привет Хабр, меня зовут Дмитрий Несмеянов, я являюсь руководителем направления разработки ML-инфраструктуры "ЛОКО-банка". Сегодня я хочу рассказать про DVC: инструмент, который многие, незаслуженно, обходят стороной. Была хорошая статья от Райффайзен Банк, в этой статье я по...

[Перевод] Исследование режима Copy-on-Write в pandas. Часть 1 Библиотека pandas 2.0 вышла в начале апреля, в ней появилось много улучшений нового режима Copy‑on‑Write (CoW, копирование при записи). Ожидается, что в pandas 3.0 режим CoW будет использоваться по умолчанию. Сейчас полный переход на к...

Синкерим, хешайдим, терминируем: 6 утилит, чтобы ускорить ваши локализации Наша команда Mobile Doc&Loc «Лаборатории Касперского» занимается подготовкой документации и локализации B2C-продуктов компании для мобильных устройств. Основная сложность (и одновременно фишка) нашей работы заключается в том, что необходимо регулярно подготавливать перев...

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

Разработка производительного распознавателя автономеров для edge-устройств «Мы всего лишь хотели пофиксить баги в своем продукте, а психанули и создали аналог одной из библиотек» — CV-инженеры CodeInside.Итак, в созданной нами системе мониторинга транспортного потока Smart Traffic System доступен функционал по распознаванию номерных знаков автомоби...

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

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

Язык программирования R для статистической обработки данных Гибадуллина Д.А  Гибадуллина Дарья Анатольевна/ Gibadullina Daria Anatolievna- студент второго курса бакалавриат Уральского филиала Финансового университета направления бизнес-информатика Аннотация: Язык программирования R имеет широкое применение в области ст...

Введение в Apache Flink: осваиваем фреймворк на реальных примерах Всем привет, меня зовут Александр Бобряков. Я техлид в команде МТС Аналитики, занимаюсь Real-Time обработкой данных. Недавно мы начали использовать фреймворк Apache Flink. Эту технологию выбрали, так как она (в отличие от Apache Spark) относится к true-стримингу и позволяет ...

Кот в мешке: как приручить дикий бинарник Всем привет. Меня зовут Василий. Я работаю SRE в Яндекс Маркете. Недавно у нас прошли тренировки по DevOps от Young&&Yandex. Сегодня я разберу финальное задание, как и обещал участникам тренировок. Оно состоит в том, чтобы развернуть инсталляцию приложения из готовог...

Как установить MikroTik CHR в облаке? Шпаргалка MikroTik Cloud Hosted Router (CHR) — удобное решение для создания виртуальных маршрутизаторов в облаке. С помощью него можно эффективно управлять сетевым трафиком, регулировать безопасность и оптимизировать работу в облачной среде. Меня зовут Кирилл, в этой статье я подроб...

Запускаем Steam игры в Proton c поддержкой Native Wayland Иллюстрации к статье подготовлены нейросетью freepik.com. В первой части нашей статьи, мы научились собирать Wine с поддержкой Wayland и запустили игру Overwatch 2. Но для большинства геймеров конечно же больший интерес представляет запуск игр Steam, и этот вопрос мы не про...

Что такое semantic-release и как с ним работать Привет! Я — Алексей Бондаренко, работаю в команде Платформа Банки.ру. Сегодня хочу рассказать о semantic-release и его практическом применении на примере упрощения разработки и внедрения библиотеки в проект.  Читать далее

Скелет, анимация, текстура: всё о создании 3D-модели человека по фотографии Всем привет! Меня зовут Ольга, я студентка второго курса НИУ ВШЭ магистерской программы «Системный анализ и математические технологии». В прошлом году я прошла отбор в совместный образовательный проект VK Education и НИУ ВШЭ — Инженерно-математическую школу (ИМШ), где стала ...

RecTools – OpenSource библиотека для рекомендательных систем Если вы когда-либо работали с рекомендательными системами, то знаете, что все необходимые и самые часто используемые инструменты разбросаны по разным библиотекам. Более того, каждая из таких библиотек имеет много уникальных особенностей, к которым нужно приноровиться (наприм...

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

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

Обзор библиотеки Stan в R Приветствую! Stan - это библиотека на C++, предназначенная для байесовского моделирования и вывода. Она использует сэмплер NUTS, чтобы создавать апостериорные симуляции модели, основываясь на заданных пользователем моделях и данных. Так же Stan может использовать алгоритм о...

ViewModel + Kotlin Multiplatform. Пробуем нативное решение Всем привет! На связи Анна Жаркова, руководитель группы мобильной разработки в компании Usetech. Компания Google объявили о своем интересе к Koltin Multiplatform на прошлом Google I/O 2023. Следом был обозначен вектор развития имеющихся решений архитектурных библиотек Jetp...

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

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

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

Работа с очередями в RabbitMQ на основе EAV-модели: превращаем плоское в реалистичное Мы добавили реалистичные дороги в навигатор 2ГИС. Теперь дорожное покрытие, разметка, объёмные развязки, съезды, островки безопасности и опоры на многоуровневых дорогах выглядят как в жизни. Под капотом — решение задачи по превращению «плоской» геометрии в объекты с реалисти...

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

Анатомия StyleX Hello world! По данным 2023 JavaScript Rising Stars библиотека StyleX заняла второе место в разделе Styling / CSS in JS (первое место вполне ожидаемо занял TailwindCSS). stylex — это решение CSS в JS от Facebook, которое недавно стало открытым и быстро набрало популярност...

Разработка HID-драйвера: шаг за шагом Предлагаем погрузиться в мир Human Interface Device (HID) в контексте операционной системы реального времени «Нейтрино». В статье мы расскажем про архитектуру HID и коснемся практических аспектов создания драйверов для устройств ввода. Кроме того, затронем вопросы системной...

Кратко про экосистему RAPIDS для работы с данными на GPU Привет, Хабр!RAPIDS — это open source библиотека экосистема, состоящая из нескольких библиотек, разработанная NVIDIA, которая предоставляет набор инструментов для выполнения всего цикла обработки данных и аналитики на GPU. RAPIDS была создана с целью того, чтобы ускорить а...

Храним файлы Strapi в облаке Selectel Привет, я некоторое время работаю над своим пет проектом, где в основном занимаюсь фронтом, а для данных использую headless CMS под названием strapi.io. В какой-то момент у меня появилась потребность вынести медиа хранилище из локальной папки в облако. А так-как основно...

Обзор Llemma: новая математическая open-source модель Привет! Меня зовут Дарина, и я занимаюсь фундаментальными исследованиями в MTS AI. Основной фокус нашей работы сейчас — обучение больших языковых моделей, их тестирование и оптимизация.Сегодня хочу сделать обзор на недавно вышедшую статью LLEMMA: an open language model for m...

[Перевод] Краткий обзор методик обучения визуально-языковых (мультимодальных) моделей Продолжаю разбор материалов на тему NLP в контексте работы переводчиков, на этот раз мы с практикантами решили поразбираться в том, как работают мультимодальные модели, т. е. как машины учатся находить соответствие не только между словами из разных языков, но и между картинк...

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

Сетевой мультитул для ИТ и ИБ специалистов: zero-skill создание Telegram чат-бота с помощью ChatGPT Привет, Хабр! Меня зовут Руслан, я – инженер по сетевой и информационной безопасности в компании-интеграторе STEP LOGIC. Решаю различные задачи, связанные с настройкой и поддержкой сетевого оборудования в компьютерных сетях, работаю над проектами, требующими планировани...

Дешево и сердито: геймдев на Godot 4.2 для тех, кто знает Python Привет, Хабр! Меня зовут Матвей, я уже несколько лет хочу научиться создавать игры. Скажу честно: все никак не хватало времени и, возможно, целеустремленности, чтобы изучить Unreal Engine, Cry Engine и им подобные движки. Но я знаю Python. Оказывается, для любителей парсел...

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

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

Что такое MLOps и как мы внедряли каскады моделей Привет, меня зовут Александр Егоров, я MLOps инженер. В статье расскажу о том, как мы в банке выкатываем огромное количество моделей. Разберём не только пайплайн по выкладке отдельных моделей, но и целые каскады. Читать далее

[Перевод] Обманчиво простой и интересный RSA Недавно, читая книгу Real-World Cryptography, я узнала об атаке Блейхенбахера, иначе называемой атакой миллионом сообщений. Этот вид атаки Даниэль Блейхенбахер продемонстрировал в 1998 году, взломав RSA через функцию шифрования PKCS #1. В книге об этой атаке было сказано не...

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

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

Пишем gRPC сервис на Go — сервис авторизации В этой статье мы научимся писать полноценный gRPC сервис на Go на примере сервера авторизации с полноценной архитектурой, готовой к продакшену. Мы напишем как серверную часть, так и клиентскую. В качестве клиента мы возьмём мой сервис — URL Shortener, о котором у меня также...

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

Clickhouse, Grafana и 3000 графиков. Как построить систему быстрых дашбордов Меня зовут Валя Борисов, и я — аналитик в команде Ozon. Задача нашей команды — создавать инструменты для мониторинга и анализа скорости. Наши усилия направлены на то, чтобы в реальном времени следить за тем, как быстро работают наши сервисы и платформа. Благодаря инстру...

Подключаем модуль TM1638 к Arduino без библиотеки SPI Изначально поставка задачи была такой. У меня была в наличии плата TM1638. Нужно было научиться с ней работать (ну и проверить работоспособность самой платы) для того, чтобы использовать её в одном интересном проекте (о нём в другой раз). Под рукой оказалась платка Arduino N...

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

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

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

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

Тестирование менеджера транзакций Привет, Хабр! Меня зовут Георгий Лебедев, я учусь на 4-м курсе ФРКТ МФТИ и работаю в команде разработки ядра Тарантула. В этой статье я хочу поделиться методикой тестирования менеджера транзакций, которая применяется в Тарантуле. Читать дальше →

[Перевод] Советы разработчика с 8-летним опытом работы Привет! Меня зовут Бенуа, я работаю разработчиком программного обеспечения последние 8 лет. В своей предыдущей компании я проработал 7,5 лет, а в начале 2022 года перешел в новую.Эта статья написана в результате недавнего самоанализа о том, что мне стоило начать делать в сво...

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

Symfony под капотом: Symfony Messenger и механизм повторной обработки сообщений при ошибках Привет! Меня зовут Ваня, последние несколько лет я занимаюсь backend-разработкой в Сравни. Моя команда разрабатывает интеграции с сервисами наших партнёров, код пишем на PHP и Symfony Framework.При работе с интеграциями мы часто имеем дело со сбоями в сторонних сервисах, и н...

Security Week 2408: уязвимости в Microsoft Exchange и Outlook 13 февраля компания Microsoft выпустила очередной ежемесячный набор патчей для собственных продуктов. Всего было закрыто более 70 уязвимостей, наиболее опасные относятся к защитным механизмам в Windows, не позволяющим открывать сомнительные файлы из Сети без предупреждения. ...

Языковой процессор LPU, GenAI в FinOps и инструменты для анализа данных Привет, Хабр! Возвращаюсь с новым выпуском полезных материалов, который поможет разобраться в ML, AI и дата-аналитике. Сегодня в программе — состояние MLOps в 2024 году, возможности дата-контрактов, оценка качества данных DQ Score и Python-библиотека для работы с SQL. Подро...

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

[Перевод] Анатомия shadcn/ui Если вы следите за новинками экосистемы JavaScript, то должны были слышать об интересной библиотеке пользовательского интерфейса (user interface, UI) под названием shadcn/ui. Вместо того, чтобы распространяться в виде пакета npm, компоненты shadcn/ui добавляются с помощью ...

Как обрести самостоятельность, перестать быть Мидлом QA и мыслить как Сеньор Многие предполагают, что ключевое отличие между Middle QA и Senior QA заключается в уровне опыта и профессиональной экспертизе. Также существует мнение, что за переход из одной категории в другую должна отвечать компания, предоставляя четкий план действий. Однако, на деле, г...

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

Как подготовиться к собеседованию с помощью Telegram-бота на Node.js В этой статье мы разработаем бота для подготовки к собеседованиям. Он будет задавать вопросы по HTML, CSS, JS и React. При этом часть из них будет с вариантами ответа, а часть — без. Базу вопросов вы сможете пополнять самостоятельно. Во время разработки вы научитесь работа...

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

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

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

Проектируем микросервисы с Reactive Manifesto Работаете с распределенными системами или только пытаетесь к ним подобраться? Проектировать такие системы с нуля бывает сложно и страшно: чтобы учесть все нюансы, нужен определенный багаж знаний. На помощь приходит Reactive Manifesto — документ, который обобщил опыт цел...

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

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

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

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

Как мы оцифровали футбольные матчи с помощью CV Привет! Меня зовут Сергей Бархударьян, я директор по развитию спортивного направления в Яндекс Плюсе. Мы занимаемся съёмкой, обработкой и стримингом спортивных событий. В этом посте я расскажу о работе с технической съёмкой и анализом футбольных матчей. Под катом — о том, ка...

[Перевод] Оптимизируя неоптимизируемое: ускорение компиляции C++ В этой статье речь пойдёт о повышении скорости компиляции библиотеки {fmt} до уровня библиотеки ввода-вывода Cи stdio. Дня начала немного теории. {fmt} – это популярная открытая библиотека С++, представляющая более эффективную альтернативу С++ библиотеке iostreams и библио...

[Перевод] Распаковываем архив gzip вручную В этой небольшой статье мы создадим архив gzip, после чего разберём его внутренние составляющие и просмотрим начинку. Избегая лишней сложности, в качестве содержимого для сжатия мы просто запишем в изначальный файл 8 символов a. $ echo "aaaaaaaa" > test.out $ ...

Уязвимости на GitHub: в библиотеке Ruby, которую скачали 250 000 раз, модулях для электронных замков и популярных играх В конце марта в блоге GitHub вышла статья, как защищаться от уязвимостей типа RepoJacking. В первых строчках автор советовал использовать пакетные менеджеры типа NPM и PyPI, чтобы киберугроза этого вида «не угрожала пользователю напрямую». Можно было бы вздохнуть с облегчени...

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

[Перевод] Создание эмулятора игр MS-DOS в Kubernetes В этой статье мы разберёмся, как можно интегрировать JavaScript-библиотеку js-dos в собственное решение Kubernetes, что позволит нам предоставлять доступ к играм MS-DOS в виде сервисов Kubernetes и запускать их в браузере. Кроме того, по ходу статьи я дам советы и рекоменд...

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

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

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

Конфигурация вместо кода при написании Telegram-бота Привет! Меня зовут Никита и я пишу от имени небольшой команды студентов, разработчиков проекта Cloffer — систему онлайн-заказа для кофеен. Мы решили начать наш путь с написания связки бэкенд + набор телеграм-ботов.Эта статья будет посвящена подходу, который мы использовали д...

Ноутбук-трансформер Asus Zenbook Duo UX8406MA: новейший Intel Core Ultra 9, два экрана и съемная клавиатура Этот традиционный с виду ноутбук может быть превращен в двухдисплейную мобильную графическую станцию с тройным управлением: посредством съемной Bluetooth-клавиатуры со встроенным аккумулятором, а также кликпада и двух сенсорных экранов. В комплекте поставляется стилус. Оба э...

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

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

Security Week 2403: Bluetooth-уязвимости в Windows, Linux, Android, iOS и Mac OS На прошлой неделе исследователь Марк Ньюлин в подробностях рассказал об уязвимостях в стеке Bluetooth, которые затрагивают в той или иной степени практически все ПК, смартфоны и другие мобильные устройства. Его статья и выступление на конференции ShmooCon дополняют опубликов...

Как настроить GitHub Actions и не заплакать: пошаговая инструкция Как настроить GitHub Actions и не заплакать: пошаговая инструкцияПривет всем! Меня зовут Виталий, я фронтендер в Mish. Решил недавно освоить полноценный автоматический деплой проекта, чтобы все работало само. Расскажу и вам, что из этого получилось.В статье буду разговариват...

[Перевод] Как реагировать на то, что вы не единственный (работодатель)? Когда в начале пандемии мир внезапно был вынужден работать из дома, это глубоко потрясло многих руководителей. Я постоянно учусь руководству и был лидером более сорока лет, в том числе работал вице-президентом отдела HR в Microsoft. Момент возникновения необходимости работ...

[recovery mode] Создаем чат-бота на Python: Полное руководство В этом полном руководстве от DataTech Community мы шаг за шагом рассмотрим процесс создания чат-бота на Python. Откройте для себя мощь NLTK и TensorFlow в обработке естественного языка и машинном обучении, чтобы создать интеллектуального помощника, способного общаться и отве...

Айтишникам нельзя не быть креативными, и я сейчас это докажу Всем привет. Меня зовут Антон, я Scrum-мастер IT-отдела компании AppEvent и по-совместительству front-end разработчик. В моей первой статье на Хабр хочу рассказать вам, почему же айтишнику нужно быть креативным и как этот навык вообще можно проявить. Ведь зачастую он являетс...

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

Как сделать консистентный UX для 40+ продуктов. Уроки, которые я извлекла из перезапуска дизайн-системы Привет! Меня зовут Ксения Гаврилова, я дизайн-менеджер в Selectel. Определяю, поддерживаю процесс и качество дизайна продуктов в компании, занимаюсь поиском и онбордингом людей в команду, помогаю дизайнерам развиваться. В 2022 году мы создали свою дизайн-систему. Это был с...

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

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

NumPy для самых маленьких Математика везде в нашей жизни, но в программировании, а особенно ML ее два раза больше. Обычно Питон берут в пример самого "научного" языка программирования из-за математических фреймворков. Как не Питон может помочь оперировать математическими абстракциями, некоторые из сф...

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

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

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

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

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

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

[Перевод] Почему реактивность без VDOM (с реальным DOM) лучше, чем реактивность с VDOM? Всем привет! В этой статье я хотел бы поделиться своими мыслями о том, почему виртуального DOM можно избежать при создании реактивности сегодня. Я работаю со всем этим уже около полутора лет, создавая фреймворк Cample.js, и у меня есть некоторые соображения по этому поводу. ...

Книга «Python для сложных задач: наука о данных. 2-е межд. изд. » Привет, Хаброжители! Python — первоклассный инструмент, и в первую очередь благодаря наличию множества библиотек для хранения, анализа и обработки данных. Отдельные части стека Python описываются во многих источниках, но только в новом издании «Python для сложных задач» вы...

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

Как я писал свою библиотеку для работы с Telegram В далекий 2019 год, когда про ковид никто не слышал и других жестей еще не было на горизонте, я читал очередную статью как “правильно” писать очередного бота на телеграм. И в очередной раз у меня крутилась мысль: че код так паршиво выглядит то? Где-то в то время телеграм еще...

Создание сервиса авторизации через систему ЕСИА Всем привет. Меня зовут Динис, я старший разработчик в БФТ-Холдинге. В данной статье приведен план по созданию сервиса авторизации через систему ЕСИА. Тема будет интересна тем, кто внедряет такой сервис для своего приложения. В статье я собрал ключевые выдержки из документац...

Исследуем Скрытые Сокровища: Малоизвестные Библиотеки Python для Аналитики Данных Введение: Привет, Хабр! Сегодня мы исследуем мир менее известных, но чрезвычайно полезных библиотек Python, которые могут значительно обогатить ваш аналитический инструментарий.

Пакет context в Go: взгляд профессионала А вы часто читаете реализацию стандартной библиотеки своего любимого языка?..Меня зовут Константин Соколов, и мы с Сергеем Мачульскисом, моим коллегой из бэкенд-разработки в Positive Technologies, хотим с вами поделиться вдохновением. Давайте вместе посмотрим на пакет contex...

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

Как автоматизировать заполнение changelog через GitHub Action Привет, Хабр! Меня зовут Юрий Петров, я автор Youtube-канала «Мобильный разработчик» и Flutter Tech Lead в компании Friflex. Мы разрабатываем мобильные приложения для бизнеса и специализируемся на Flutter. Разработчики используют GitHub, чтобы писать и хранить свои прое...

Экспорт статьи из LibreOffice Writer в Habr Flavored Markdown или HTML Резюме. В статье дается ссылка на файл в формате ODT (основной формат файлов, используемый в текстовом редакторе LibreOffice Writer), содержащий макросы на «родном» для LibreOffice языке программирования макросов BASIC, которые осуществляют экспорт текста из LibreOffice Writ...

[Перевод] Начало работы с Axum — самым популярным веб-фреймворком Rust Когда дело доходит до выбора серверного веб-фреймворка в экосистеме Rust, можно запутаться из-за большого количества вариантов. В прошлом, лидером по популярности был Rocket, но сейчас за первенство сражаются Axum и actix-web, и Axum все больше набирает обороты. В этой ста...

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

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

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

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

AMD открыла доступ к исходному коду библиотеки трассировки лучей HIP Библиотека трассировки лучей от AMD стала доступна как Open Source, что значительно упростит разработчикам её интеграцию и использование в своих приложениях.

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

[Перевод] Полезные расширения VScode для работы с документацией Как правило, работа с документацией — это последний этап любого проекта, связанного с данными (data science, data visualization и т. д.), проектированием и разработкой ПО. Речь о создании и редактировании библиотек, файлов README, обучающих материалов и др. Среди всех преиму...

Библиотека NVIDIA TensorRT-LLM для ускорения языковых моделей теперь доступна на Windows Ранее библиотека была анонсирована для центров обработки данных.

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

Как стать надёжной базой Secure-base leadership или как стать надежной базой для коллег в нестабильные времена Сейчас набирает популярность относительно новый вид лидерства: secure base или «надёжная база». Этот подход в большей степени отражает контекст и потребности людей в вопросах построения карьеры и коммуникаций на работе. Во времена неопределенности важно, чтобы лидер мог воод...

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

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

Laravel трюки: автоматическое подключение каналов логирования Всем привет! Меня зовут Иван Шишкин и я руковожу разработкой в агентстве Intensa.В этой статье хотел бы поделиться методом автоматического подключения каналов логирования в Laravel через механизм сервис контейнеров(DI). Читать далее

ChatGPT плохо отвечает на «простые вопросы». Как это починить? Привет, Хабр! Меня зовут Антон Разжигаев, я аспирант в Сколтехе и участник научной группы Fusion Brain (AIRI), работающей над мультимодальными подходами. В этой статье я расскажу о нашей последней работе — Multilingual Triple Match — системе для поиска ответов на фактологиче...

Выжимаем максимум из PostgreSQL Привет, Хабр! Меня зовут Максим, я работаю тестировщиком оборудования в Selectel Lab. В лаборатории мы занимаемся тестированием нового оборудования для дата-центров. О том, как мы измеряли производительность PostgreSQL на разных конфигурациях — под катом! Читать дальше &rar...

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

Calypso: Схема данных MongoDB на Scala Чтобы применять Domain-Driven Design, DDD Aggregate и Transactional outbox на MongoDB, наша команда создала open source библиотеку calypso для работы с BSON.Публикация для тех, кто стремится к современным практикам разработки и разделяет наше влечение к Scala 3.Готовы к откр...

Российские СХД, очень много платформ для ML, новые GPU и коммутаторы. Дайджест серверного железа за февраль Привет! Меня зовут Сергей, в этой статье я расскажу о новинках в мире железа за прошедший месяц. Многие из них показали на выставке Mobile World Congress 2024 в Барселоне. Бонус — обзор нового оборудования российских вендоров. Уже присматриваете железо для своих серверов? П...

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

Книга «React быстро. 2-е межд. изд.» Привет, Хаброжители! React предельно упрощает создание привлекательных и надежных интерфейсов для веб-приложений. Эта великолепная библиотека JavaScript имеет модульную архитектуру, что позволяет легко создавать, объединять и тестировать компоненты. React идеально подходит...

Press F, чтобы рассчитать использование облачных ресурсов Привет, Хабр! Меня зовут Эд, я менеджер биллинга в Selectel. Сегодня хотел бы рассказать про подход FinOps, который объединяет продуктовое мышление, мониторинг и управление облачными ресурсами. А еще показать графики и разобрать, кому и зачем это вообще нужно. Спойлер: не т...

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

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

Как сэкономить время, силы и деньги компании с помощью дерева метрик Привет, Хабр! Меня зовут Калаш, и я больше 11 лет в IT. Запустил несколько интернет-магазинов, мобильное приложение, программу лояльности с нуля. Консультирую и менторю начинающих продактов. Проверил более 2300 проектных работ студентов курса для продакт-менеджеров в Яндекс ...

Прыжок по облакам: кейс миграции MS SQL Server из Azure в VK Cloud Миграция ИТ-инфраструктуры из облака в облако — квест, с которым сейчас сталкиваются многие компании и на своих шишках понимают сложность всего процесса. И чем больше инфраструктура, тем выше уровень сложности этого квеста. Особенно если перенести надо работающий сервис с ...

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

FineBI: Обработка данных для начинающих пользователей Хабр, привет!На связи команда Business Intelligence GlowByte. Да-да, те самые неугомонные, которые создали самое крупное русскоязычное сообщество FineBI, проводят обучения, собирают дайджесты и ежегодно организуют масштабные конференции. Меня зовут Александр, я руководи...

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

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

Как автоматизировать проверки данных в Airflow с Great Expectations Привет, меня зовут Дима Курганский, и я - MLOps инженер в команде машинного обучения в Банки.ру. Эта статья будет интересна, тем кто понимает принципы работы с Great Expectations и его составляющие компоненты и хочет вывести его на прод с использованием Apache Airflow. Читат...

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

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

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

Как создать свой DAO с блэкджеком и OpenZeppelin? Продолжаем тему DAO. Раннее мы уже разбирали саму концепцию, а теперь пора делать своё решение!Разберём по косточкам смарт-контракты короля Web3 библиотек — OpenZeppelin. Они прошли всевозможные аудиты и считаются эталоном безопасности. Умение использовать governance смарт-к...

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

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

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

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

Мульти-тенант в Django Привет, Хабр! Мульти-тенант (multi-tenancy) — это подход, который позволяет одному экземпляру приложения обслуживать множество клиентов или арендаторов (тенатов). Каждый арендатор изолирован от других, имея возможность кастомизации под свои нужды, при этом основной кодовой б...

И снова здравствуйте: мыши и клавиатуры от Microsoft продолжат выпускать благодаря лицензированию. Как это работает? В конце апреля 2023 года сообщалось, что Microsoft больше не будет выпускать мыши, клавиатуры и веб-камеры под собственной торговой маркой. Также говорилось о том, что компания планирует сфокусировать внимание на развитии бренда Surface. Многие пользователи продукции корпора...

Как работает блокчейн Scroll: технические детали и обзор архитектуры Привет, Хабр! Меня зовут Леша Куценко, я разработчик смарт-контрактов на Solidity в команде MetaLamp. ​​В этой статье я расскажу про основные технические принципы блокчейна Scroll, которые повлияли на дизайн блокчейна, а также дам обзор общей архитектуры блокчейна.Из этой ст...

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

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

[Перевод] Ранний взгляд на будущее тестирования с swift-testing Пару месяцев назад Стюарт Монтгомери, программист из команды XCTest в Apple, поделился новой библиотекой тестирования Swift с открытым исходным кодом на основе макросов.Библиотека называется Swift-testing, и, как указано в ее документации, она предназначена для проверки конц...

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

Мегагайд: культура работы с Git Привет всем! Меня зовут Юля, я фронтенд-разработчик, наставник на курсах по JS и React и организатор профессионального сообщества Tbilisi JS. В Практикуме я помогаю студентам на курсе «React-разработчик».За время работы в разных компаниях и над разными проектами я поняла, чт...

Как перезагрузиться, пройдя пешком 250 км, или каким был для меня Путь Сантьяго Всем привет! Меня зовут Катя Черных, я бизнес аналитик в Х5 Tech, работаю на продукте Ценообразование. Живу в Москве, со времён ковида работаю удалённо и большую часть дня провожу дома. Поэтому к планированию отпуска отношусь серьёзно, стараюсь уезжать подальше из своего дом...

Как с помощью YouTube продать умных столов на 25 млн за 1 год без вложений в рекламу Меня зовут Матасов Иван, я сооснователь бренда Mensa Design. Мы изготавливаем лучшие в мире индивидуальные проекты умных столов и кабинетов на заказ. Дорого. Качественно. Под ключ.В этой статье расскажу основные принципы создания видео, которые набирают миллионы просмотров (...

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

Яндекс открыл доступ к API YandexGPT для всех – можно создавать чат-ботов и многое другое Команда Яндекса объявила об открытии API YandexGPT для всех пользователей в режиме превью. Как отмечает пресс-служба, это новый сервис Yandex Cloud для бизнеса.  Сгенерировано нейросетью Midjourney Теперь сервис тарифицируется, у него есть новые технологические во...

WebAssembly: короткий обзор ассемблера для фронтенда В последнее время фронтенд все больше и больше обрастает новыми технологиями, одна из них — WebAssembly. На ней можно написать полноценное web‑приложение и почти все на что способна ваша фантазия. В статье мы рассмотрим, что такое WebA...

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

Когда не нужны библиотеки для работы с часовыми поясами Итак, настал тот moment, когда вам нужно работать с датами в разных часовых поясах (Новый год же!), а ваш архитектор/начальник не разрешает использовать Moment Timezone или Luxon, потому что они увеличат размер вашей сборки, а для вашего проекта важно, чтобы UI грузился быст...

Выгорание на работе: что это такое и по каким причинам происходит Привет, Хабр! Меня зовут Даниил Старосек, я работаю аналитиком на проекте «Единое фронтальное решение» (ЕФР) в Россельхозбанке. В прошлый раз я рассказал о работе в условиях the roof is on fire на испытательном сроке: проект и сроки горят, старший коллега в отпуске, а ты в к...

Работа с A/B-тестами в крупной соцсети: подробно об A/B платформе Одноклассников ОК — социальная сеть, которой ежемесячно пользуется более 36,5 млн уникальных пользователей из России. Наш продукт имеет сложную архитектуру, включает десятки сервисов и инструментов, которые мы постоянно совершенствуем и добавляем новые. Чтобы в процессе выкатки обновлений ...

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

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

Сделай свой собственный ChatGPT: OpenAI запускает конструктор по созданию чат-ботов Американская компания OpenAI готовится к запуску интересного обновления своей генеративной системы искусственного интеллекта. Как свидетельствуют попавшие в сеть скриншоты и видео, пользователям платной подписки ChatGPT вскоре станет доступен конструктор чат-ботов GPT B...

Эльфы и пингвины: что такое ELF и как он работает в Linux? Всем привет! С вами как всегда я, Аргентум. Сегодня я расскажу и поведаю вам древние тайны, которые хранят горные старцы-сисадмины — тайны об эльфах, и как они взаимодействуют с древним народцем пингвинов. Дамы и господа, встречайте — статья о работе ELF и двоичных файлов в...

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

Вся мощь ускорителей Nvidia для ИИ теперь в Windows. Компания объявила о доступности для этой ОС своей библиотеки TensorRT-LLM На данный момент искусственный интеллект в Windows практически никак не задействован, если не считать интеграции языковой модели GPT. Однако, во-первых, уже есть процессоры AMD с выделенным блоком для работы с ИИ, и аналогичные готовит Intel, а во-вторых, согласно слуха...

Restyle как новый стандарт для создания UI в React Native Restyle предоставляет набор инструментов, которые позволят строить UI продуктов на основе токенов. Особенно очень хорошо такой подход залетает, когда в продукте есть Дизайн Система и этот набор токенов действительно определен.Одно из основных преимуществ библиотеки Restyle п...

GigaChat API для .NET Core Всем привет! Если Вы решили подключить в свою разработку на .NET Core поддержку GigaChat, то эта статья для Вас.В ней расскажу подробнее про то, как пользоваться библиотекой GigaChatAdapter чтобы облегчить разработку под сберовский ИИ чат Изучить статью

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

[Перевод] Как я создал еще один JS фреймворк Многие могут усмехнуться при мысли о запуске очередного фреймворка JavaScript, учитывая множество уже существующих проверенных решений. Зачем браться за создание нового? Давайте я расскажу свою личную историю о том, что подтолкнуло меня к разработке этого фреймворка JavaScri...

Symbiote.js VS LitElement Мотивация разработчиков библиотек и фреймворков для фронтенда может быть разной. И если вы, являясь таким разработчиком, хотите работать не “в стол” а с расчетом на какое-то признание и пользу для индустрии, вы должны четко понимать, что именно и зачем вы делаете. Если вы хо...

Максимизируем продуктивность: Создание ИИ-секретаря с Whisper и ChatGPT Приветствую! Меня зовут Григорий, и я главный по спецпроектам в команде AllSee. В современном мире искусственный интеллект стал незаменимым помощником в различных сферах нашей жизни. Однако, я верю, что всегда нужно стремиться к большему, автома...

Инструменты AutoML в 2024 Определимся с терминологией. Можно найти c десяток формулировок «AutoML- это…» с разной степенью детализации. Но все они сведутся к словам «AutoML — автоматизирует и упрощает работу с данными». И вот здесь как раз и начинаются сложности. Границы определения AutoML размыты. Е...

Metatron — Open Source библиотека для генерации отчетов на языке Rust Год назад возникла идея переписать весь Java-бекенд на Rust, который я уже несколько лет разрабатываю и поддерживаю. Я нашёл все аналоги библиотек и фреймворков из мира Java в экосистеме Rust: Читать далее

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

Kubernetes Networking: сервисы, Ingress и Network Policies Когда я впервые столкнулся с задачей масштабирования сложного приложения в Kubernetes, то был полон оптимизма. Однако вскоре стало ясно, что управление сетевым трафиком и безопасностью в такой динамичной среде — это непросто. Наше приложение начало страдать от потерь пакет...

Мобильная разработка за неделю #517 (27 ноября — 3 декабря) В новом дайджесте создание самолетного радара для любимой дочки, Kotlin под капотом, утечки памяти, визуальная иерархия элементов, лучшие приложения года для iOS и Android, руководство по монетизации и многое другое! Подписывайтесь на на наш Telegram-канал Mobile Insights,...

Пуш-уведомления RuStore Привет! Меня зовут Артем Ковардин, я работаю в VK и мы с командой разрабатываем Push Service RuStore и SDK для него. Если вы занимаетесь разработкой мобильных приложений и хотели бы иметь канал коммуникации с пользователями или же вам просто интересно то, как работают разраб...

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

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

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

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

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

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

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

Кратко про Serde в Rust Serde — это высокопроизводительная библиотека для сериализации и десериализации данных в Rust. Она поддерживает различные форматы данных, включая JSON, YAML, TOML, BSON и многие другие.В этой статье рассмотрим основы Serde в Rust. Читать далее

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

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

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

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

Изменить цвета и кнопки сервиса — и не сломать дизайн-систему Меня зовут Алексей Афонин, я старший дизайнер продукта в Yandex Cloud. В прошлом году нам понадобилось полностью изменить внешний вид нашего сервиса для бизнес‑аналитики DataLens перед его выходом в опенсорс. Разработчики и дизайнеры интерфейсов часто ста...

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

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

Книга «Python с нуля» Привет, Хаброжители! Эта книга даст вам основные знания и инструменты, которые помогут стать опытным разработчиком на Python. Эта книга приглашает вас в путешествие по огромному миру Python и охватывает все — от самых основ до более продвинутых тем, таких как наука о данн...

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

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

Оптимизация DevOps: Как персональные стенды и Grafana улучшают разработку и мониторинг Всем привет, меня зовут Зуев Алексей, и я работаю DevOps-инженером в компании Bimeister! Сегодня я расскажу вам о том, как мы облегчаем жизнь нашим разработчикам и как разработчик может отследить состояние своего микросервиса в namespace Kubernetes. Основная цель этой статьи...

[Перевод] Неожиданное взаимодействие предсказания ветвлений и подсистем памяти Это 15-ая статья в серии, посвящённая оптимизации подсистем памяти. Остальные доступны здесь (англ.). В ней мы изучим взаимодействие механизма предсказания ветвлений с подсистемой памяти. В повествовании мы будем исходить из предположения, что вам знаком принцип предсказан...

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

Prosci на практике — системное управление изменениями Всем привет! Меня зовут Максим, я тимлид деливери-менеджеров в Тинькофф Кассе. Расскажу, из чего состоят изменения, а также про одну методологию работы с ними. Будет кейс, как мы применяли ее на практике. Будет немного про провалы изменений, про структурный подход и факторы ...

Anvil Utils: Assisted injection в многомодульных Android проектах без боли Привет, Android разработчики!Хотел бы рассказать вам про мою библиотеку (Anvil Utils) - кодогенератор позволяющий слегка уменьшить количество боилерплейта в многомодульных проектах использующих Dagger 2 и Anvil. Читать далее

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

Исследование безопасности десктопных приложений на основе Electron Electron — фреймворк с открытым исходном кодом для создания кросс-платформенных десктопных приложений с помощью JavaScript, HTML и CSS. Это крутая технология, но с ней связаны многие ИБ-риски. В статье я разберу основы безопасной работы с этим фреймворком и расскажу: как а...

Первое приложение на SolidJS В этой статье познакомимся с SolidJS − JavaScript-библиотекой для создания пользовательских интерфейсов без виртуального DOM. Мы создадим легкий список задач с использованием TypeScript и разберем некоторые особенности библиотеки. Читать далее

Новый взгляд на старые игры. Часть 4. Duke Nukem 3D (1996) + add-ons + EDuke32 (source-port) В этом кратком руководстве будет разобран вариант запуска "Duke Nukem 3D: Atomic Edition" (1996) с наиболее распространённым и актуальным source-портом, а также перечислен список адд-онов, которые могут представлять интерес. Читать далее

Сможет ли IPFS полностью заменить HTTP? Меня зовут Виталий Киреев, я руководитель R&D в SpaceWeb. В начале прошлого года мы внедрили IPFS-технологию в работу своего хостинга, и все наши клиенты получили возможность размещать контент в IPFS-сети. Решились на такой шаг не сразу: IPFS — технология пока еще экспер...

[Перевод] Создание интерактивных анимаций с помощью React Spring Эта статья посвящена React Spring — библиотеке анимации на основе JavaScript. Мы рассмотрим её фичи, включая различные хуки и компоненты, и то, как использовать их в приложениях. Читать далее

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

NFL 2K Playmakers — новая карточная игра на iOS и Android Издатель 2K Games не только анонсировал, но и выпустил мобильную игру NFL 2K Playmakers в App Store и Google Play. Разработкой занималась студия Cat Daddy Games, которая до этого работала над WWE SuperCard и NBA 2K Mobile. Если установить NFL 2K Playmakers до 7 мая, то можно...

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

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

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

Xpath — залог стабильных UI-автотестов на Web и Mobile Web Локатор — обязательный элемент любого автотеста, который позволяет системе находить правильный путь к тестируемому компоненту интерфейса. От точности локатора и корректности его оформления зависит не только, смогут ли разобраться с локатором тестировщики и другие коллеги, но...

Quick & worldwide: как мы ускорили DocLoc-релизы и апдейты для 34 локализаций Наши потребительские мобильные продукты уникальны тем, что распространяются в более чем 100 странах на 34 языках — возможно, рекордное значение в российской IT-индустрии. В основном лишь считанные продукты отдельных компаний переводятся на десяток-другой языков; у нас же мас...

Что делать, если кандидат оказался сеньором или психом: советы на случай форс-мажоров Меня зовут Александр Гирев, я Android-разработчик и технический интервьюер. В одной компании я выполнял роль interview expert: следил за качеством собеседований, готовил рекомендации и матрицы вопросов, обучал начинающих интервьюеров.Однажды на интервью я спросил кандидата, ...

Kubernetes: шпаргалка для собеседования Всем привет! Меня зовут Олег, я работаю исполнительным директором по разработке в Газпромбанке. На разных этапах карьеры я участвовал во многих собеседованиях, а в настоящее время сам собеседую кандидатов на должность инженеров DevOps и системных администраторов в Газпромбан...

Продолжаем глубже изучать передачу данных по сетям GSM через GRPS с помощью SIM868 и Repka Pi — про AT-команды  В предыдущей статье мы рассказали, как с помощью модуля GSM/GPRS/GNSS Bluetooth HAT, созданного на базе SIM868, библиотек SIM800L, RoverConnect и Telemetry можно обмениваться данными между микрокомпьютером Repka Pi с JSON-сервисом, доступным в интернете.Мы привели исхо...

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

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

Как совмещать работу с учебой. Что-то про тайм-менеджмент Всем привет! Меня зовут Даша и я системный аналитик компании SM Lab. Работаю в команде Brand Planning Tool. Наша команда BPT помогает брендам (таким как Fila, Demix, Northland) запускать новые коллекции. В этом я году закончила бакалавриат и поступила в магистратуру по напр...

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

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

На что стоит рассчитывать на первой работе: путь стажера (data engineer) Меня зовут Виктор и на данный момент я заканчиваю стажировку и перехожу на должность младшего инженера по работе с данными в компании Sapiens solutions. В этой статье я хочу поделиться опытом и дать несколько рекомендаций людям, которые только начинают свой путь в области ра...

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

Малоизвестные библиотеки Python для анализа данных, которые сделают вашу жизнь проще Привет Хабр! В этой статье мы рассмотрим некоторые полезные библиотеки Python для задач обработки данных, с которыми, возможно, вы еще не знакомы. Хотя для задач машинного обучения на ум приходят такие библиотеки, как pandas, numpy, scikit-learn, keras, tensorflow, matplotli...

Хочу мороженое, как у того ребёнка: русские офисы Мы разрабатываем Р7-Офис. По сути, главный ориентир — сделать, как MS, но только []. Раньше это было бесплатно (на самом деле — нет), по-русски, совместимо со всеми старыми документами, безопасно. Сейчас в силу текущей ситуации компании не могут купить, а часто даже испо...

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

Операторы вымогателя Rhysida взяли на себя ответственность за взлом Британской библиотеки Хак-группа, стоящая за вымогателем Rhysida, взяла на себя ответственность за кибератаку на национальную библиотеку Великобритании, произошедшую в октябре. Из-за этого инцидента крупнейшая национальная библиотека мира столкнулась с серьезными проблемами в работе, которые прод...

ChatGPT для разработчиков: API, лимиты, как втягивать в него базу знаний, что нельзя сделать, что лучше делать осторожно Мы с командой вернулись тут с Хайлоада, и там даже CTO крупных компаний задают много вопросов про разработку с LLM. Наша компания занимается прикладной разработкой всего того, что касается GPT/LLM. Расскажу про очевидные вещи, о которых у меня там спрашивали CTO и разраб...

[Перевод] Главное из книги Fundamentals of Data engineering — фундаментального труда о дата-инжиниринге Команда VK Cloud перевела статью, в которой автор кратко излагает основные мысли книги Джо Рейса и Мэтта Хаусли Fundamentals of Data engineering. Здесь приводится краткий конспект глав и самые важные моменты, которые полезно знать любому человеку, работающему с данными. Чи...

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

Памятка: 15 фраз для стендапов на английском языке Работая с зарубежными коллегами, вам наверняка придётся участвовать в стендапах — коротких ежедневных встречах, на которых IT-специалисты рассказывают о выполненных задачах, проблемах и планах на сегодня. Делать это на английском сложнее, чем на родном языке, но, к счастью, ...

Что я понял на первой работе программистом / Мои советы Junior-разработчикам Всем привет! Меня зовут Максим. Я backend-разработчик, который не так давно устроился на свою первую работу. В этой статье хочу поделиться своими наблюдениями/советами/рекомендациями для начинающих программистов. Ведь, как известно, если опыт не превращён в текст, он даже не...

“Так ты хочешь кролика или нет?”: как простая автоматизация общения в Авито может принести вдвое больше лидов Привет, Хабр! Меня зовут Владислав, и один из моих проектов — интернет-магазин карликовых кроликов. Сегодня по приглашению коллег из ChatApp, я расскажу, как автоматизировал свой бизнес. Нет, речи ни о каком роботизированном выращивании кроликов не пойдет — только о продажах...

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

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

[recovery mode] Как Канбан-метод повлиял на команды банка Всем привет! Меня зовут Дмитрий. Я работаю senior Agile‑коучем в ОТП Банке. Использую практики Канбан‑метода в своей работе с 2019 года и хочу поделиться с вами своим опытом. В статье используются данные, собранные при работе с сервисной IT...

Make It Right! Максимум пользы, минимум проблем: рекомендации по написанию API автотестов на Python Привет, Хабр! Меня зовут Катерина, я инженер по автотестированию в команде онлайн-кинотеатра PREMIER и сегодня я хотела бы поделиться с вами своим опытом в написании API автотестов на Python. Я работаю в сфере автотестирования уже довольно давно и на практике встречаю проект...

Расширяем тестовый фреймворк с помощью Pytest-плагинов. Часть 1: теория Всем привет! Меня зовут Александр Волков, я занимаюсь интеграционным и компонентным тестированием в YADRO. В числе продуктов компании есть системы хранения данных и, говоря о тестировании, я буду иметь в виду в первую очередь работу с СХД. Однако описанные подходы пригодятся...

Парк юрского периода глазами нейросети: как развернуть Diffusers для генерации изображений за 10 минут Как часто бывает: появляется немного свободного времени, хочется отдохнуть и написать картину… но его то ли недостаточно, то ли просто лень размахивать кистью. Но можно делегировать задачу нейросети — для этого необязательно использовать Midjourney или DALL-E. Один из вари...

Qualcomm открывает ИИ-библиотеку для смарт-устройств Компания Qualcomm запустила свой AI Hub, коллекцию готовых ИИ-моделей, которые можно запускать на любом устройстве, основанном на процессорах Snapdragon.

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

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

Два вида мошенничества с помощью сайтов: розыгрыши айфонов, корм для собак и отъем денег через СБП Меня зовут Ростислав, я разработчик (одного из) чата для сайтов. Как правило, чаты можно подключить бесплатно на любой сайт. И среди пользователей чата появляются недобросовестные люди. Точнее говоря - явные мошенники. В этой статье я хочу рассказать о двух типах развода, с ...

React + Three.js. Создаём собственный 3D шутер. Часть 1 Привет, дорогие пользователи мира IT!В эпоху активного развития веб-технологий и интерактивных приложений, 3D-графика становится всё более актуальной и востребованной. Но как создать 3D-приложение, не теряя преимуществ веб-разработки? В этой статье мы рассмотрим, как сочетат...

React + Three.js. Создаём собственный 3D шутер. Часть 2 Привет, дорогие пользователи мира IT!В эпоху активного развития веб-технологий и интерактивных приложений, 3D-графика становится всё более актуальной и востребованной. Но как создать 3D-приложение, не теряя преимуществ веб-разработки? В этой статье мы рассмотрим, как сочетат...

React + Three.js. Создаём собственный 3D шутер. Часть 3 Привет, дорогие пользователи мира IT!В эпоху активного развития веб-технологий и интерактивных приложений, 3D-графика становится всё более актуальной и востребованной. Но как создать 3D-приложение, не теряя преимуществ веб-разработки? В этой статье мы рассмотрим, как сочетат...

Как сделать Spark в Kubernetes простым в использовании: опыт команды VK Cloud Сегодня Spark — отраслевой стандарт среди инструментов обработки данных. Его часто используют в связке с Hadoop, однако Hadoop не очень подходит для работы в облаке. Альтернативой может быть Kubernetes, однако самостоятельно его настраивать и конфигурировать очень сложно. ...

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

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

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

Шпаргалка для QA: как тестировать Flutter-приложения Привет! Меня зовут Юлия Андреева, я QA-специалист в AGIMA. Мы пилим и тестируем много Flutter-приложений. И недавно я заметила, что не все коллеги понимают специфику их тестирования. В этой статье расскажу про основные инструменты и подходы, которые мы используем. Сосредоточ...

[Перевод] Не стоит недооценивать HTML «HTML – это просто», «Разрабатывать фронтенд проще, чем бэкенд», «После реализации бэкенда обновление UI не должно составлять труда», – за время работы в сфере веб-разработки вокруг меня то и дело звучали эти и другие аналогичные утверждения. И очень часто они вызывали у м...

Как настроить работу на Канбан-досках с нуля за 15 минут? Руководство для начинающих На канбан-досках могут быть различные виды задач, в зависимости от конкретного проекта, типа бизнеса или потребностей команды. В этой статье разберём основы ведения учета задач на Канбан-доске, необходимые колонки, виды и типы задач, в том числе Epic, userstory, task. Чита...

Симулятор электронных схем Qucs-S: обзор новшеств версии 2.1.0 Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан на С++ с использованием набора библиотек Qt. Для работы Qucs рекомендуется использовать также открытый движок моделир...

Как сделать тесты на Espresso более читабельными и стабильными Если вы писали тесты на Espresso — тестовом фреймворке от Google с открытым исходным кодом, — то вы знаете, что они не всегда стабильны и легко читаемы. Меня зовут Ксения Никитина, я являюсь Android-разработчиком в мобильной команде «Лаборатории Касперского». В этой статье я...

Дизайн-система Gravity UI: как легко построить свой интерфейс Всем привет, я Алексей Сизиков, руководитель отдела User Experience в Yandex Cloud. В этой статье я хочу поделиться новостью: мы выпустили нашу дизайн-систему и библиотеку компонентов Gravity UI в опенсорс. Под катом — рассказ, зачем мы сделали Gravity UI, как его ...

Проблема понимания существующего кода, или Как делать иногда [не] надо Я столкнулся с тем, что я иногда не понимаю код, с которым мне приходится работать. И это сильно сказывается на моей производительности и на качестве конечного результата. Неделю назад я прочитал статью Плохо девелопмент за авторством @dalerank(Сергей Кушниренко), в которой ...

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

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

[Перевод] Тестируем PCIe в новом Raspberry Pi 5 Если вы ещё не в курсе, то недавно было объявлено о выходе Raspberry Pi 5. Я специально снял ролик, где разобрал всю аппаратную часть – что изменилось, что появилось и чего не стало. В этой статье я представлю вам спецификацию новой модели, расскажу о некоторых особенностя...

Milk Sad уязвимость в библиотеке Libbitcoin Explorer 3.x. Крупная кража на $ 900 000 у пользователей Биткоин Кошельков Исследователи компании «Slowmist» проводят регулярное исследование сферы безопасности блокчейна Биткоин. Они обнародовали уязвимость в библиотеке Libbitcoin Explorer 3.x, который позволила злоумышленникам украсть более $ 900 000 у пользователей Биткоин Кошельков (B...

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

Архитектура Stable Diffusion: Face ID, Lighting Это перевод моей статьи на medium.com. Год назад я провёл краткий обзор по теме переноса стиля. Пару месяцев назад я решил вернуться к этому вопросу и исследовать прогресс за последний год. За это время случилось много значимых изменений: архитектура open-source модели Stabl...

Пристальный взгляд на отладку JavaScript приложений Всем привет! Меня зовут Паша Востриков, я делаю на JS/TS много разного в «Лаборатории Касперского»: фронт, облачные сервисы (Node.js), штуки для коробочной поставки (OnPrem), платформенные компоненты и библиотеки. И, конечно же, Open Source. Сегодня хотел бы затронуть тему ...

Как сэкономить миллионы рублей, или перевод документации нейродвижками Всем привет!Меня зовут Александр Денисов. Я работаю в компании Naumen и отвечаю за документирование и локализацию программного продукта Naumen Contact Center (NCC).В этой статье я расскажу о том, как у нас был автоматизирован процесс перевода документации с помощью нейродвиж...

Зачем нужен индивидуальный план развития? Привет, Хабр! Меня зовут Ольга Николаева, я ведущий менеджер по персоналу в группе «Рексофт». Сегодня я расскажу про индивидуальный план развития (ИПР): как использовать этот инструмент, для чего он нужен, и как его создать так, чтобы он принес реальные результаты. Также мы ...

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

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

MyBatis «на минималках» Привет, Хабр! Меня зовут Пётр Гусаров, я Java‑программист в CDEK. В этой статье расскажу про не очень распространённый фреймворк MyBatis. Почему MyBatis? Потому что мы в CDEK используем его в большинстве проектов, и в деле он весьма не...

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

Создание онлайн видео плеера Привет, Хабр! Меня зовут Игорь, я занимаюсь мобильной разработкой в компании ГРИ, часть холдинга Sunlight. Сегодня хочу поделиться опытом создания плеера для воспроизведения плейлистов в форматах m3u и m3u8. Читать далее

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

React 18: что поменялось React — одна из самых популярных JavaScript-библиотек для создания пользовательских интерфейсов. В её новой версии произошли значительные изменения, и сейчас я расскажу про самые важные. React 18 теперь умеет существенно лучше работать с приложениями, содержащими большие ...

Как ZKP и ZK-Rollups помогают в решении проблемы масштабирования: обзор блокчейна zkSync Привет, Хабр! Меня зовут Рома и я Solidity-разработчик. Вместе с коллегами мы создаем базу знаний по тематике блокчейна и web3-разработке. Меня заинтересовал блокчейн zkSync, т.к. он выделяется среди других Layer 2 решений, но сначала хочу немного рассказать, в чем суть проб...

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

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

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

Как мы упростили работу с данными с помощью пайплайна: пошаговый план Привет, меня зовут Руслан Шкарин. Я Senior Software Engineer и это моя первая статья в DIY-медиа вАЙТИ от beeline cloud. Расскажу, как занимался построением пайплайна для сбора и анализа логов системы в реальном времени для сервиса, который обходил сотни ...

Как TDD помогает мне делать RTS Привет, Хабр! Меня зовут Игорь, и я Unity Developer. В этой статье я хотел бы поделиться кейсом, как Test Driven Development помогает мне разрабатывать мою RTS игру. Читать далее

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

Создание библиотек и публикация в npm Занимаясь веб-разработкой в it-компании Intelsy на аутсорс- и аутстафф-проектах, я постоянно подключаю и использую библиотеки. Решил собрать воедино всю накопленную информацию по этой теме и поделиться с теми, кому это может быть нужно: с опытными или начинающими разработчик...

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

Как перевести игру 'The Lamplighters League' На данном примере предлагается разобрать перевод .wem файлов аудио одного языка (англ.) на другой язык (русский) с последующей упаковкой в .wem и использования в игре. В качестве инструментов будут использоваться python, нейросети, а также программа Wwise. Из интересного — ...

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

Потоковая обработка данных: анализ альтернативных решений Всем привет! Я Алексей Пономаревский, разработчик решений для платформ сбора и обработки больших данных.Два года назад мы в ITSumma создали решение для потоковой обработки данных с помощью Apache Spark и базы данных Greenplum — spark-greenplum-connector. Это многофункциональ...

[Перевод] VES — микросервис Cosmos для кодирования видео на Netflix Cosmos представляет собой новейшее поколение медиа-обработчика на Netflix, интегрирующее архитектуру на основе микросервисов, асинхронные рабочие процессы и функционал без привязки к серверам. Эта платформа нацелена на оптимизацию медиа-процессов внутри Netflix, повышая их г...

Опыт автоматизации управления FPGA-стендами для распределенной команды: отказ от готового решения и работа над ошибками В software-разработке с автоматизацией обычно все неплохо: более-менее понятно, как настроить CI и автоматизировать отдельные этапы CI-конвейера. Есть множество готовых решений и практик. Но, когда речь заходит об автоматизации тестирования на «железе», появляется множество ...

Импортозамещение high-availability решений: обзор китайского балансировщика TongTech К концу 2023 года большинство балансировщиков в российских ЦОДах по-прежнему западного производства. В прошлом году западные вендоры ушли из России, и оставаться на их оборудовании стало рискованно. Но мигрировать на доступные решения — тоже риск: они на рынке недавно, не хо...

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

Алгоритм Monte Carlo Tree Search простыми словами Можно ли научить ИИ играть в настольную игру и выигрывать в ней, если мы сами не знаем как это сделать? Да! И один из способов — использовать алгоритм Monte Carlo Tree Search (MCTS). Он актуален даже сейчас, в эпоху развития нейронных сетей. У многих людей, в том числе и у...

Рулим запуском Spark-приложений в Airflow с помощью самописного оператора Airflow в Lamoda Tech играет роль оркестратора процессов обработки данных. Ежедневно с его помощью мы запускаем 1 800+ тасок на проде, примерно половина из которых являются Spark-приложениями.Все Spark-приложения сабмитятся из Docker-контейнеров. И здесь сталкиваемся с пробл...

Эмуляция сотового телефона… на сотовом телефоне О чём только не пишут на Хабре. Например, о создании J2ME-игры в 2024 году, о написании программ на ассемблере под Nokia 3310. Вдохновлённый этими статьями, я тоже решил создать нечто подобное. Это «нечто» должно удовлетворять следующим критериям: а) Быть не слишком прос...

AMD открыла исходный код библиотеки HIP Ray-Tracing Библиотека позволяет разработчикам добавлять трассировку лучей в свои приложения.

Практическое руководство по Rust. 1/4 Hello world! Представляю вашему вниманию первую часть практического руководства по Rust. Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владеют любым современным языком программирования....

Темпоральные типы в PostgreSQL и их использование Меня зовут Фролков Иван, я работаю программистом с 1993 года, и уже восемь лет — в Postgres Professional. Периодически выступаю на конференциях. В этой статье я расскажу вам про темпоральные типы данных в PostgreSQL — доклад о них я читал на PGConf.Russia 2022. Почему меня э...

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

Система мета-сборки GN: краткий обзор и подходы Привет! Меня зовут Александр, я работаю в VK в команде браузера Atom. В его основе лежит open source-движок Сhromium. Сегодня хочу поговорить о системе мета-сборки GN. Её используют в крупных проектах Google (Chrome, Fuchsia, а также связанных с ними), и, например, когда раз...

«Диспетчер задач» Windows 11 получит поддержку NPU от AMD Стало известно, что в ближайшее время «Диспетчер задач» в Windows 11 получит поддержку нейронных процессоров (Neural Processing Unit, NPU) от компании AMD. Этот блок включён в состав новейших процессоров от Intel, AMD и Qualcomm и призван ускорить обработку задач искусствен...

Как решить типичные проблемы Django нестандартным подходом: Fake Injection Давайте признаем, что развитие проектов в мире Django не всегда проходит гладко. Мы часто сталкиваемся с толстыми моделями и сериалайзерами, размытой бизнес-логикой и тестированием, которое больше напоминает головную боль, чем удовольствие. Меня зовут Павел Губарев, я back...

Принцип работы контроллера памяти в процессоре на примере Эльбрус 16С В этой статье разберём как устроена работа контроллера памяти в процессоре беря за пример Эльбрус 16С. Краткий разбор.

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

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

Обзор Polygon zkEVM: как работает L2 решение для Ethereum Привет, Хабр! Меня зовут Леша Куценко, я разработчик смарт-контрактов в команде MetaLamp, мой основной стек – Solidity. В этой статье я подробнее расскажу про решение для масштабирования с нулевым разглашением (Zero-knowledge proof), а именно – о блокчейне второго уровня Pol...

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

Вы за это заплатите! Цена Чистой Архитектуры Всем привет, меня зовут Артемий, я работаю старшим Android-разработчиком в команде пользовательского профиля в RuStore. Мой опыт в индустрии уже 8 лет. За это время я успел поработать в разных проектах и компаниях. У меня был опыт работы в проекте, в котором было свыше 300 м...

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

Когда переключаются потоки в Spring WebFlux Работа с библиотекой WebFlux вызывает затруднения у многих Java/Kotlin разработчиковКод выглядит непривычно, непонятно в каких потоках выполняется логика и как этим управлятьСегодня я попытаюсь объяснить простым языком такой важный аспект, как момент переключения потоков в W...

Границы проекта в условиях «the roof is on fire» Привет, Хабр! Меня зовут Даниил Старосек, я работаю аналитиком в проекте ЕФР в Россельхозбанке. Сегодня расскажу вам о работе в условиях the roof is on fire. Поскольку мне не совсем комфортно говорить о себе в первом лице, будем использовать усл...

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

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

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

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

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

Как совмещать основную работу и проекты на стороне У многих из нас остается достаточно свободного времени в сутках. А почему бы не монетизировать это время, думает начинающий IT левак? Если работать по три часа в день в будние, брать по 2 тысячи за час, то получится 120 тысяч дополнительного дохода в месяц. Звучит отлично!Ме...

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

REST API/Web сервер на PowerShell Все привет! В продолжение статьи о возможностях PowerShell, хочу поделиться несложной реализацией создания REST API и простого Web-сервера, используя только PowerShell на базе класса .NET HttpListener. Такая реализация позволяет настроить endpoint (конечные точки) для обрабо...

Уязвимость в библиотеке aiohttp уже привлекла внимание хакеров Исследователи предупреждают, что недавно исправленная уязвимость в Python-библиотеке aiohttp (CVE-2024-23334) уже взята на вооружение хакерами, включая вымогательские группировки, такие как ShadowSyndicate.

Разработка Tizen-приложения для Samsung Smart Signage Platform(SSSP): гайд для js-разработчиков В этой статье я хочу рассказать о своем увлекательном путешествии в мир ОС Tizen. В ней я постараюсь подробно описать не только основные шаги по установке Tizen Studio и созданию проекта, но и поделюсь с вами ценными практическими советами по разработке приложений, освещая к...

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

Как я проходил собеседования на QA-инженера в разных компаниях и что на них обычно спрашивали Меня зовут Вадим, я тестировщик в ЮMoney. Недавно моя знакомая разработчица из Канады искала работу в тестировании, в том числе в российских компаниях, и обратила внимание, что у нас собеседования сложнее: они более долгие, детальные и насыщенные техническими вопросами. У ме...

Чем отличается искусственный интеллект Galaxy AI на разных смартфонах Samsung На презентации смартфонов серии Galaxy S24 в январе 2024 года компания Samsung анонсировала функции Galaxy AI, базирующиеся на работе искусственного интеллекта. Изначально они были доступны исключительно на новых устройствах, но со временем стали появляться на моделях, выпу...

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

Как перестать работать в выходные и наконец-то научиться делегировать: опыт одного тимлида Всем привет, меня зовут Иван Михеев, я Chief Technology Officer маркетплейса авторских туров YouTravel.me, где руковожу разработкой, поддержкой и всем, что связано с технической частью бизнеса. Сегодня я хочу вам рассказать о том как делегирование влияет на эффективность ком...

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

[recovery mode] 13 грехов продакт-менеджера Чтобы качественно решать проблемы пользователей, продакт-менеджер должен обладать широким набором компетенций: исследования, аналитика, критическое мышление, управление проектами, коммуникации и так далее.Ошибки в работе неизбежны. Но ошибаться не страшно. Страшно не признав...

[Перевод] Почему я не буду использовать Next.js Представьте, что вы планируете начать новый проект или использовать в существующем более современный подход. А, может, вас просто не устраивает используемый фреймворк, и вы подумываете об альтернативах. В любом случае вам нужно что-то выбрать. Существует множество «совреме...

Как не заскучать в 1С-разработке Многие считают 1С особым замкнутым миром. А методы работы в нем — неприменимыми в «нормальном» программировании. Это давно не так. Конечно, у каждого решения есть свои плюсы и минусы. Но я уверен: если вы не любите 1С, то вы просто не умеете его готовить. Меня зовут Вла...

Деревья ltree в PostgreSQL – простым языком Привет, Habr! Меня зовут Оля Плюта, я продуктовый аналитик маркетплейса Uzum Market. В этой статье я расскажу об иерархических деревьях ltree в PostgreSQL. Статья вводная, поэтому я постаралась сделать её максимально понятной и наглядной. Читать далее

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

Как стоит и как не стоит использовать HttpClient в .NET Всем привет! Меня зовут Андрей Федотов, я бэкенд-разработчик в одной из команд платформы интернета вещей ZIIoT Oil&Gas. В этой статье я рассказываю, что нужно знать и как работать с HttpClient в .NET, чтобы не получить трудноподдерживаемый и сложный код и не нарваться на...

[Перевод] Погружение в компиляторы Kotlin Привет, меня зовут Мялкин Максим, я занимаюсь мобильной разработкой в KTS.Не за горами выпуск новой версии Kotlin 2.0, основной частью которого является изменение компилятора на K2. По замерам JB, K2 ускоряет компиляцию на 94%. Также он позволит ускорить разработку новы...

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

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

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

Новые проклятия: руководство по ncurses HTOP, midnight commander... Как же они построили довольно красивый и удобный псевдографический интерфейс?Все благодаря библиотеке для C/С++ под названием new curses ("новым проклятиям" дословно) или же NCURSES.Но как ее установить и работать с ней? Вперёд!

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

NVIDIA и HP представили библиотеки обработки данных NVIDIA CUDA-X NVIDIA и HP представили библиотеки обработки данных NVIDIA CUDA-X, которые будут интегрированы в рабочие станции HP AI, для ускорения подготовки и обработки данных

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

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

Релиз-менеджер — почему он вам нужен Привет! Меня зовут Ксения, я уже больше 7 лет занимаюсь релизами и сейчас работаю релиз-менеджером в RuStore. Сегодня хочу рассказать больше об этой роли, в каких случаях он вам нужен (спойлер, не всегда) и когда её можно переложить на другого сотрудника.  Читать далее

Мой вам подарок к новому году или как наконец запустил то, что надо было давно запустить… Немножко истории Начну с истории вопроса. Очень давно, я написал Fresh IDE – навороченнoe IDE для программирования на ассемблере, а точнее на FlatAssembler. Fresh IDE долгие годы меня полностью устраивал, поэтому я с перерывами выпустил 2 главные версии и начал просто его...

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

У нас есть должность «бадди» — приятеля, который поможет во всём «Дмитрий, помогите, пожалуйста, у меня не открывается рабочий стол. Уже половина десятого, а я ещё не залогинилась. Что мне делать? Как быть? Меня уволят». Это позвонила Даша, новая сотрудница. Позвонила она своему бадди, человеку, отвечающему за то, чтобы новички нормальн...

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

Перевод: Microsoft готовит «революционную» Windows, ориентированную на ИИ Редактор портала Windows Central Зак Боуден поделился новой информацией о будущем ОС Windows. Новое руководство команды Windows & Web Experiences формирует новую дорожную карту развития операционной системы, которая будет реализовываться в ближайшие годы. Новый план раз...

SVG-виджеты для tcl/tk. Часть I Начать статью хочу с цитаты из слов Брайана Кернигана,которую мне посчастливилось найти:Tcl/Tk придает работе магическую продуктивность, за несколько часов можно достигнуть тех же результатов, что за дни или недели при разработке на C или C++... Tk весьма эффективен для боль...

Как устроен @State в SwiftUI Привет! Меня зовут Илья, я iOS разработчик в компании Банки.руУже больше двух лет наше приложение мы пишем на SwiftUI. В статье расскажу о Property Wrapper'е @State. Читать далее

Attention is Not All You Need: как менялась архитектура трансформера С момента выхода оригинальной статьи про трансформер прошло уже больше 7 лет, и эта архитектура перевернула весь DL: начав с NLP архитектура теперь применяется везде, включая генерацию картинок. Но та ли это архитектура или уже нет? В этой статье я хотел сделать краткий обзо...

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

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

Valve представила SteamVR 2.0 Компания Valve сообщила о запуске SteamVR 2.0, выпустив обновление ровно через месяц после неожиданного запуска бета-версии SteamVR 2.0 в сентябре. «В этом выпуске мы переносим все новое и интересное с платформы Steam в виртуальную реальность, — говорится в ...

Практическое руководство по Rust. 2/4 Hello world! Представляю вашему вниманию вторую часть практического руководства по Rust. Первая часть Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владеют любым современным языком пр...

Обзор на новую CSS-in-JS либу от Facebook* – StyleX Недавно компания Facebook* (aka Meta**) выпустила в опенсорс собственную CSS-in-JS библиотеку под названием StyleX. По заявлениям разработчиков, она отлично подходит для больших проектов и ключевым ее преимуществом является перфоманс.В этой статье мы рассмотрим пример исполь...

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

Взгляд на ИБ со стороны не ИБ-разработчиков Всем привет! Меня зовут Елена Галата, в ГК "Цифра" я руковожу направлением разработки программного обеспечения. Хочу сегодня немного поговорить об информационной безопасности и о том, как она выглядит со стороны тех, кто имеет отношение к созданию ПО. Не только программисто...

[Перевод] Построение архитектур для обработки данных в режиме реального времени при помощи Apache Kafka, Flink и Druid Командам, которые занимаются обработкой данных (поступающих пакетными партиями в рабочих потоках) сложно соответствовать современным требованиям по обработке данных в режиме реального времени. Почему? Потому что пакетный поток данных – от доставки данных до их дальнейшей о...

Собирать данные VS интерпретировать их: типичные ошибки в e-commerce аналитике Каждый день мы собираем больше 200 ГБ данных о клиентах Lamoda, которые листают сайт и делают заказы. Но красивые цифры про наше хранилище — это одно, а правильные выводы из данных — совсем другое.Меня зовут Александр Айваз, я руковожу командой Data & Analytics в Lamoda ...

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

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

Модульные механики на Unity Привет, Хабр! Меня зовут Игорь, и я Unity Developer. В этой статье хотел бы рассказать, как можно делать модульные механики для игровых объектов, за счет разделения данных и логики без ECS. Читать далее

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

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

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

[recovery mode] Безопасность android-приложений. Реверсим OWASP MASTG Crackme 1 Всем привет! Меня зовут Максим и я занимаюсь исследованиями источников данных. В своей работе периодически приходится сталкиваться с исследованием android-приложений. В этой статье я хочу показать базовые методы реверс-инжиниринга и исследования android-приложений на примере...

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

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

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

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

«Отучаем» WinFXNet от жадности (часть 1) ПредысторияВ сфере АСУ ТП инженерам по работе приходится не только писать ПО, но и использовать готовое ПО от производителей оборудования. В связи с санкциями, многие поставщики покинули РФ, а оборудование и ПО необходимо продолжать эксплуатировать дальше.В данной статье буд...

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

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

Как работать с нейросетью Midjourney, чтобы получать желаемый результат Привет, Хабр! Меня зовут Алина, я дизайнер в Friflex. Отвечаю за красоту мобильных и веб-интерфейсов и делаю иллюстрации для медиаканалов компании. Midjourney — одна из самых известных моделей искусственного интеллекта в области создания изображений. С её помощью можно ...

Войти в ИТ после 45-ти: личный опыт смены профессии Привет, Хабр! Меня зовут Базянова Зиля, я работаю ведущим инженером Блока обеспечения и контроля качества выпуска изменений ПО в РСХБ-Интех. В статье хочу затронуть вопрос касательно смены профессии в возрасте 45+ и поделиться своей историей. Читать далее

Как машинлернеры меряли экспрессию генов от воздействия лекарств Привет! Меня зовут Дима и я веду канал про соревновательный МЛ. Недавно мы выиграли приз в довольно престижном соревновании и я сделал обзор всех лучших решенийХочу вам рассказать о Open Problems, где не удалось взять золото, но все равно все очень довольны, ведь мы взяли 13...

[Перевод] Переменные окружения в Node.js: полное руководство В этой статье мы рассмотрим переменные окружения (environment variables) в NodeJs с примерами. По сути, это пары ключ-значение набора данных, которые хранятся на уровне операционной системы. Они важны, поскольку отвечают за: разделение проблем, безопасность, переносимость, м...

Визуализация общественного транспорта TL;DRЯ написал тул для генерации постеров с маршрутами общественного транспорта, разные цвета для разных видов транспорта, толщина и прозрачность линий соответствуют количество поездок на сегменте маршрута. Репозитарий тут: https://github.com/dragoon/citylinerОколо 10 лет на...

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

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

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

[Перевод] Искусство создания понятных графиков Эта статья — субъективное эссе о хороших и плохих практиках в визуализации данных, в нём приведены примеры и объяснения. В папке Scripts/ на Github есть файлы .Rmd, генерирующие показанные ниже графики. Для их работы требуются R, RStudio и пакет rmarkdown. R: Скачать R R...

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

Python и Excel глазами НСИ Всем привет! Меня зовут Алмаз. Я специалист по НСИ (нормативно-справочной информации) в компании Bimeister. Хотел бы поделиться своим небольшим опытом автоматизации некоторых рутинных задач при работе с различными файлами и Excel- базами данных.Python.Предыстория.Сейчас дово...

CPM vs. BI:  о чем не расскажут продавцы Более восьми лет я специализируюсь на внедрении CPM и BI-систем различных вендоров. Несмотря на то, что во многом их функционал пересекается, мне хорошо понятно, какие задачи решаются лучше, а какие решаются только одним из этих двух классов систем.Написать данную статью мен...

Как шутят математики. Шифры Фейнмана Ранее я писал о взломе первого и второго шифра, придуманных математиком Полом Оламом ради розыгрыша своего друга Ричарда Фейнмана. Если описать контекст в нескольких словах, то эти шифры были одной из математических шуток, которые были в широком ходу у коллектива учёных, раб...

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

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

Будни техпода. Как разместить Telegram-бота на виртуальном сервере Чуть больше месяца назад мы запустили Telegram-бота, через который можно заказать виртуальный сервер. Этот бот помогает арендовать VPN-сервер, VPS из нашего маркетплейса или уникальную конфигурацию под ваши цели. А не возникало ли у вас желания запустить собственный Tele...

Excel vs Grafana: Автоматизация дежурств Привет, Хабр! Меня зовут Ахмед, я Deputy CTO в Сравни. Сегодня расскажу вам об опыте управления дежурствами в ИТ-команде.Представьте: вы нашли баг на проде; хотите рассказать о находке коллегам, которые отвечают за эту функциональность. Идёте в рабочий мессенджер, пишет...

Как принимать платежи в Telegram | Оплата без всяких токенов и асинхронная обработка платежа Как принимать платежи на своем сайте или в telegram используя библиотеку yoomoney-api. Читать далее

Простыми словами про обработку текстовых запросов пользователя в Телеграмм ботах на java Тем, кто так или иначе уже сталкивался с разработкой Telegram-ботов на java, известно, что бот должен уметь отправлять запросы Telegram-серверу и получать от него обновления (updates). В настоящее время существует два способа получения обновлений:- использование LongPolling ...

ГАЙД по python стеку для Data Science инженеров Data science - это область, которая занимается изучением и анализом больших объемов данных, чтобы находить в них полезные закономерности, делать прогнозы или принимать решения на основе фактов. Самым популярным языком программирования для data science является Python. Б...

[Перевод] Конкурентный отказ Любая задача может быть завершена несколькими способами: 1. Нормальное завершение, после которого мы получаем результат (например, Ничего/Единица). 2. Сообщение об ошибке. 3. Принудительное завершение, после которого программа может остаться в неопределённом состоянии. В к...

Как запустить собственную GSM-сеть за пять минут при помощи SDR Приветствую всех! Давным-давно я уже рассказывал про то, как в домашних условиях поднять GSM-сеть при помощи комплектующих, доступных любому школьнику. И в той статье я мельком упомянул, что идеальным в плане производительности вариантом будет запускать сети при помощи SDR,...

Propensity score matching: как оценивать маркетинговые кампании, если невозможно провести A/B тесты Всем привет! Меня зовут Вячеслав Назаров, я лид аналитики промо в СберМаркете. В этой статье я расскажу, как оценивать маркетинговые кампании, если провести A/B- тесты нельзя. Еще обсудим логику в Propensity Score Matching (PSM), и то, какую пользу инструмент может принести ...

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

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

Количество нативных приложений для HarmonyOS достигло 4000 Huawei сделала заявление относительно своей мобильной операционной системы HarmonyOS. Компания сообщила, что количество собственных приложений HarmonyOS в настоящее время достигло отметки в 4000. В данный момент Huawei готовится выпустить HarmonyOS NEXT, оптимизированну...

9 архитектурных антипаттернов при разработке телеграм-ботов на Python Привет, Хабр! Если вас заинтересовал заголовок этой статьи, значит, вас интересует созданием телеграм-ботов, и вы стремитесь к совершенству в этом. Разработка телеграм-ботов требует не только креативности, но и правильной архитектуры. В этой статье мы рассмотрим 9 архитектур...

[Перевод] Потерян и не найден Салют! В этой статье я попытался разобрать назначение и основные сценарии использования директории lost+found в Linux. ❯ Обзор Если мы запустим fsck, команду проверки и восстановления файловой системы, она может найти фрагменты данных, на которые нет ссылок нигде в файло...

Управление зависимости в Go Одна из основных фич Go это система управления зависимостями. В начале своего пути Go полагался на GOPATH, что иногда вызывало сложности и ограничения для разработчиков. Однако с появлением Go Modules в Go версии 1.11, ситуация изменилась. Go Modules представили более гибк...

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

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

Что можно и что нельзя делать с Async/Await Синтаксис async/await, введенный в Swift 5.5, значительно упростил асинхронное программирование, сделав его более доступным и интуитивно понятным. Однако, как и любой мощный инструмент, он может быть использован неправильно. Здесь я хочу рассмотреть пять распространенных оши...

Разработка игр с использованием Go и библиотеки Ebiten Go является мощным и эффективным языком программирования, который можно использовать для создания игр. В этой статье мы рассмотрим разработку простой игры с использованием языка Go и библиотеки Ebiten, предназначенной для создания 2D игр. Читать далее

Практическое руководство по Rust. 3/4 Hello world! Представляю вашему вниманию третью часть практического руководства по Rust. Первая часть Вторая часть Руководство основано на Comprehensive Rust — руководстве по Rust от команды Android в Google и рассчитано на людей, которые уверенно владеют любым современ...

Объявление и инициализация переменных в C++ Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специальных. Это шестая статья из серии, список предыдущих статей приведен в конце в разделе 7. Серия ориентирована на программистов, имею...

10 забавных сервисов в области ИИ Привет, Хабр! Генерирую я значит через сервис ИИ новые эмодзи и думаю, а почему бы не написать прямо сейчас статью про это и поделиться с Вами 10 сервисами, которые мне показались забавными. Кого-то из Вас они могут натолкнуть на ещё более интересные идеи или мысли. Меня зов...

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

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

Распределённые системы на службе ФССП России. Часть 2. Суперсервис «Цифровое исполнительное производство» Привет, Хабр! Меня зовут Дима. Я работаю в отделе разработки систем межведомственного взаимодействия РЕД СОФТ. Представляю вам вторую статью про импортозамещение в АИС ФССП России, в которой я расскажу о проектировании сложных территориально распределённых информационных сис...

CEO Nvidia: для создания независимой электронной отрасли США понадобится около 20 лет На конференции DealBook New York Times генеральный директор Nvidia Corp. Дженсен Хуанг заявил, что США, вероятно, понадобится пара десятков лет для того, чтобы стать независимыми в поддержании собственной цепочки производства и поставок чипов. Руководитель Nvidia затронул...

Эволюция в мире UX: как мы создали паттерн проектирования и упростили прогулки пользователей по панели управления Привет, Хабр! Меня зовут Витя, я проектировщик интерфейсов в Selectel. Так вышло, что мне поручили разработать интерфейс формы создания облачного сервера. Задача не из самых простых: конфигуратор достаточно функционален и гибок, но должен оставаться понятным. Было сложно, ...

Как PaaS решил проблемы стандартизации разработки сервиса одной утилитой Привет

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

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

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

Сам написал, сам погонял: Как я написал 3D-гонки «на жигулях» за неделю, полностью с нуля? Статьи про инди-разработку игр — это всегда интересно и занимательно. Но статьи про разработку игр с нуля, без каких-либо игровых движков — ещё интереснее! У меня есть небольшой фетиш, заключающийся в разработке минимально играбельных 3D-демок, которые нормально работали б...

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

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

К чему с годами приводит работа с Dependency Injection и Service Locator Глубину осознания библиотеки можно проверить, написав её самостоятельно. Возможно, новорожденное решение будет ограниченным и не найдёт свою аудиторию, но оно навеки принадлежит автору и подтверждает реальное понимание работы технологии. Так произошло и со мной. Я решил...

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

Умная рыбалка: как мы учим ML работать с фишингом Всем привет! Меня зовут Мария Анисимова, я программист-исследователь команды машинного обучения Антиспама Почты Mail.ru  В этой статье я хочу рассказать вам о фишинге. И о том, как мы с ним боремся. Фишинговые атаки стали популярны с момента появления электронной п...

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

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