Feed aggregator

Регулярные выражения: как научиться читать между строк

Habr.com - Thu, 04/03/2025 - 17:40

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

Решение этой задачи существенно упростит использование регулярных выражений.

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

Регулярные выражения помогут в разных случаях – от валидации данных, например, при проверке форматов номера телефона до анализа текстов: получения ссылок или другой информации.

Посмотрим на синтаксис регулярных выражений. Дальше на примерах станет понятнее.

Читать далее

Как мы сделали битву разработчиков

Habr.com - Thu, 04/03/2025 - 17:32

Вот тут два игрока соревнуются, кто быстрее решит задачу

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

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

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

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

В итоге получились очень забавные соревнования. Читать дальше →

Почему пациенты откладывают лазерную коррекцию? 5 неудобных вопросов — 5 честных ответов

Habr.com - Thu, 04/03/2025 - 17:25

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

Читать далее

Сохранится всё: как возник Internet Archive и какова его дальнейшая судьба

Habr.com - Thu, 04/03/2025 - 17:19

Internet Archive или Архив интернета занимается поиском и хранением накопленной информации: будь то книги, видео или программное обеспечение. В 2024 году сервис подвергся хакерской атаке, что привело к утечке данных 31 млн пользователей. Также на организацию неоднократно подавали в суд из-за нарушений в сфере интеллектуальной собственности. Рассказываем в нашей статье историю взлетов и падений Архива.

Читать далее

Как эксперимент помог распутать спагетти-код: применяем DDD-Lite на микросервисах

Habr.com - Thu, 04/03/2025 - 17:18

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

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

О том, как в рамках кейса мы избавились от спагетти-зависимостей, поделили сервис на чёткие слои, упростили поддержку и масштабирование кода, — рассказываем под катом. Плюс делимся рекомендациями: кому и при каких сценариях связка «DDD Lite + микросервисы» может пригодиться.

Читать далее

Безопасность AI-агентов в Web3. Часть 1: архитектура, уязвимости и старые добрые джейлбрейки

Habr.com - Thu, 04/03/2025 - 17:17

В последние годы мы наблюдаем активный рост популярности LLM-моделей и интереса к их интеграции в Web3-приложения, такие как DAO и dApp-боты или автоматические трейдеры. Представьте: смарт-контракт управляет финансами, а подключённая языковая модель принимает решения, основываясь на анализе новостей или команд пользователей. Ещё недавно такая идея казалась футуристичной, однако сегодня, в 2025 году, web3 AI-агенты, взаимодействующие с блокчейном и децентрализованными системами, стали реальностью.

Многие уже слышали истории о том, как пользователи вынуждают LLM-модели отвечать на неэтичные вопросы, сочинять матерные стихи и совершать другие «шалости». Однако в контексте web3 подобные нестандартные поведения моделей могут привести к реальным и ощутимым финансовым последствиям. В этой статье мы рассмотрим устройство web3 AI-агентов, проанализируем возможные векторы атак, обсудим актуальные jailbreak-методы и разберём несколько конкурсных задач на примерах из личного опыта.

Читать далее

React 19: что нового, что полезного, и куда мы движемся

Habr.com - Thu, 04/03/2025 - 17:17

С вами Дима, старший фронтенд разработчик в Surf, и сегодня мы разберём React 19 — новую версию одной из самых популярных библиотек для создания пользовательских интерфейсов. 

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

Читать дальше

Быстро и качественно: как создать 3D-объект для VR с помощью фотограмметрии

Habr.com - Thu, 04/03/2025 - 17:15

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

Привет, Хабр, меня зовут Аким, я дизайнер в IT-компании SimbirSoft. В этой статье я расскажу, как создавать 3D-модели с нужными для VR-тренажеров параметрами с помощью фотограмметрии, и составлю универсальный пайплайн для этого процесса.

Материал будет интересен тем, кто работает с 3D-моделями, а также заказчикам проектов для VR-тренажеров.

Погрузиться в тему

Как создаются шедевры: будни технического писателя

Habr.com - Thu, 04/03/2025 - 17:13

Один из важнейших принципов работы команды «Оптимакрос» — прозрачность. Нам важно, чтобы каждый процесс был понятным и хорошо документированным, чтобы даже новичок быстро разобрался. За созданием такой понятной документации стоят технические писатели. Елена Логунова, технический писатель «Оптимакрос», рассказывает, как превращает сложные технические решения в простые инструкции, без которых невозможна ни прозрачность процессов, ни удобное использование продукта.

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

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

Читать далее

[Перевод] Настраиваем контекст Copilot: что работает, а что нет

Habr.com - Thu, 04/03/2025 - 17:01

Недавно мы разбирались, как писать код с Cursor. Знать про настройку LLM необходимо всем, кто профессионально использует нейросети в своей работе. Предлагаем перевод еще одной статьи Романа Иманкулова. Автор исследовал GitHub Copilot, чтобы разобраться в составлении инструкций по кодированию и, таким образом, повлиять на предложения, которые генерирует Copilot. Читать дальше →

Автоматизация задач без кодинга: единый реестр, система управления проектами и таск-трекер на основе MWS Tables

Habr.com - Thu, 04/03/2025 - 17:00

Привет, Хабр! Меня зовут Александр Антипов, я продакт-оунер MWS Tables.

Раньше казалось, что «опытные пользователи ПК» — исчезающий вид, но реальность другая: сегодня сотрудники не просто работают с технологиями, а сами автоматизируют рутинные процессы. Без разработчиков и сложных систем — с помощью макросов, таблиц, SharePoint и других инструментов.

Полтора года назад мы в МТС создали для таких кейсов MWS Tables — внутреннюю платформу самостоятельной автоматизации. В этом посте — реальные примеры, как MWS Tables уже применяется на практике. Я покажу, как с помощью MWS Tables реализовали единый реестр для работы с качеством данных, централизованную систему по менеджменту IT-проектов и собственный таск-трекер. Все подробности — под катом.

Читать далее

Импортозамещение службы каталога — не повод для паники: разбираем возможности и риски

Habr.com - Thu, 04/03/2025 - 16:52

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

Читать далее

Виноград, Фурье и немного наивности: 4 подхода к реализации сверток с простыми примерами

Habr.com - Thu, 04/03/2025 - 16:45

Привет, Хабр! Меня зовут Кирилл Колодяжный, я работаю в YADRO и продолжаю изучать машинное обучение на С++. Я уже писал, как реализовать модели для распознавания лиц на фото и для поиска объекта в пространстве с помощью computer vision. Ссылки на материалы ищите в конце статьи.

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

У статьи будет вторая часть: про особенности реализации одного из этих алгоритмов с использованием CUDA в рамках фреймворка PyTorch и про то, как адаптировать его под свои задачи.

Читать далее

Установка и настройка Flowise AI для создания RAG-агентов

Habr.com - Thu, 04/03/2025 - 16:21

Всем привет!

Это очередная статья из цикла, где мы разбираем различные способы применения ИИ-агентов с RAG — методом оптимизации работы и вывода LLM агента благодаря добавлению в контекст базы знаний. Проще говоря, мы даём модели какой-то объём знаний, по которому она способна работать. Это может быть как документ, по которому будет вестись поиск релевантных данных, так и база данных.

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

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

Читать далее

Книга: «System Design: пережить интервью»

Habr.com - Thu, 04/03/2025 - 16:17
Привет, Хаброжители!

Собеседования по проектированию систем — это боль. Даже опытные разработчики спотыкаются о бесконечные open-ended вопросы и доску, на которой нужно за 45 минут набросать архитектуру, способную пережить апокалипсис.

Хорошая новость: наша новинка поможет успешно пройти интервью.

Книга Чжиюна Таня «System Design: пережить интервью» — это гайд по выживанию. В ней нет воды, только практика: как разбирать задачи, выбирать решения и уверенно их продавать эксперту. Автор знает, о чем говорит — его подход помог разработчикам попасть в Amazon, Apple, ByteDance, PayPal и Uber.
Читать дальше →

Как я писал проводник для Wear OS и что из этого вышло

Habr.com - Thu, 04/03/2025 - 16:12

Как я писал проводник для Wear OS и что из этого вышло

О чём тут пойдёт речь:

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

Читать далее

SPL – мультиязычный вычислительный граф и локальный FaaS на вашем ноутбуке

Habr.com - Thu, 04/03/2025 - 16:07

Привет, Хабр!

Хочу рассказать вам про пет-проект, над которой мы сейчас работаем с товарищем.  Основная идея заключается в создании мультиязычного вычислительного графа с возможностью быстрого развертывания собственной мини-FaaS (Function as a Service) платформы прямо на локальной машине. То есть возможность совмещать наработки из разных источников (на самом деле не только их, а еще и различные сторонние утилиты) посредством локального фреймворка и сервера. Сейчас мы называем этот проект SPL (Smart Pipe Lime).

Читать далее

Welch's test: он вам не замена Т-test'a

Habr.com - Thu, 04/03/2025 - 16:04

Привет! С вами команда аналитиков «Пятёрочки» X5 Tech. В данной статье мы расскажем про один из классических тестов в статистике — тест Уэлча (Welch's Test). Постараемся максимально раскрыть, когда и где стоит его применять и является ли он, на самом деле, тестом по умолчанию вместо Т‑test-a.

Читать далее

MockGUI – помощь в сборке и организации мини репозитория rpm пакетов

Habr.com - Thu, 04/03/2025 - 16:00

Есть множество сервисов и программ по сборке программных пакетов: OpenSuse Build Service (OBS), koji. Fedora copr, rpmbuild, mock.

Все они позволяют организовать сборку программных пакетов, релиз пакетов в репозиторий и пр. Большинство систем обладают обширным функционалом, например тот же OBS позволяет собирать как deb пакеты, так и rpm, так и AppImage и т. д. Koji позволяет разбить сборку по разным машинам и управляя билдерами организовать сборку огромного числа тяжелых пакетов, многие комплексы типа OBS и Copr вообще организованы в виде сервисов в сети и позволяют различным пользователям собирать пакеты и публиковать их в публичных репозиториях.

Зачем же еще понадобилось дополнительное средство по организации сборки rpm пакетов и репозиториев?

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

Читать далее

В Windows обнаружили 8-летнюю дыру в безопасности, которую Microsoft не хочет исправлять

Habr.com - Thu, 04/03/2025 - 15:41

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

Microsoft отказалась устранять уязвимость в Windows с идентификатором ZDI-CAN-25373, которая активно эксплуатируется хакерами с 2017 года. Несмотря на очевидную опасность, компания классифицировала проблему как "несущественную" и решила не выпускать патч с исправлением. Об этом и поговорим сегодня.

Читать далее

Who's online

There are currently 0 users and 1 guest online.
Syndicate content