Обновить

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Punto Switcher для Linux

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров5.4K

https://alternativeto.net/software/punto-switcher-for-linux/about/

Что умеет Punto Switcher для Linux?

1) Конвертировать последнее слово перед курсором.

2) Конвертировать выделенное.

3) Конвертировать последнее слово в строке терминала Gnome.

4) Конвертировать выделенное в строке терминала Gnome.

Читать далее

Тактирование АЦП от сигнала точного времени. Личный опыт

Время на прочтение23 мин
Количество просмотров3.8K

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

Читать далее

«Роботы затупят или не приедут вообще». 5 кошмаров, которые терзают оргов True Tech Champ в Halloween (и не только)

Время на прочтение5 мин
Количество просмотров724

Привет, Хабр! Меня зовут Настя Голубничая, я деврел в МТС Web Services, а еще в этом году лидирую трек «Программирование роботов» в МТС True Tech Champ. Полуфинал продлится до понедельника, сейчас участники удаленно подключаются к реальным роботам и проходят лабиринты. Каждую неделю мы проводим для них встречи с экспертами, отвечаем на вопросы, помогаем разобраться в управлении машинами — и в целом всегда держимся на связи. Кажется, нам удалось провести работу над ошибками прошлого года и на этот раз мы предусмотрели все. Или все-таки нет?

Вот именно из-за последнего вопроса мне не нужны никакие страшилки, чтобы не суметь ночью заснуть. Достаточно представить, что одно из опасений осуществляется, — и мы с командой разработки будем до утра генерить идеи, как это все пофиксить и какую соломку (и где именно) подстелить. К счастью, сейчас все боли уже закрыты, но тревога в памяти еще жива. И сегодня, раз уж повод такой подвернулся, я хочу рассказать, какие страхи мучили нашу команду накануне третьего сезона True Tech Champ и как мы боролись с таинственным ужасом и тенями прошлого. Итак, в черном-черном городе черной-черной ночью мы готовили чемпионат…

Читать далее

«Плюсы» на термометре: греемся докладами про C++ и Linux на митапе о низкоуровневой разработке

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.8K

Конец осени, первый снег и идеальный момент, чтобы заглянуть под капот системного софта. 22 ноября в Москве соберем системных инженеров, исследователей и разработчиков, чтобы обсудить, как устроены компиляторы, ядро Linux и драйверы. Митап разделен на два потока: С++ и C/Linux kernel. Регистрируйтесь и подключайтесь — офлайн или онлайн.

Читать далее

Rust без паник: дельная техника для системного программирования

Время на прочтение13 мин
Количество просмотров6.6K

Может ли Rust заменить C? Этот вопрос беспокоил меня много лет. Тем временем я успел написать upb — библиотеку C для работы с Protocol Buffers, и сейчас являюсь её техническим руководителем. Вполне понятно стремление обеспечить безопасность памяти в пределах всего программного стека — поэтому и возникла идея портировать upb на Rust.

Притом, что мне приятны базовые принципы Rust, я долгое время относился к этой идее скептически и сомневался, что, портировав upb на Rust, удастся сберечь её производительность и компактность кода, которые мы с коллегами так старались оптимизировать. На самом деле, исходно я собирался написать статью о том, почему именно применительно к upb языку Rust никогда не сравниться с C по производительности.

Но недавно я открыл для себя одну технику, которая заставила меня немного переосмыслить этот вопрос. Я назову её «Rust без паник». Притом, что этот метод определённо не нов, мне нигде не удалось найти подробного разбора, в котором бы рассказывалось, как именно этот метод используется и какие проблемы решает. Правда, интересная дискуссия по этому поводу велась в теме Enforcing no-std and no-panic during build, где есть ссылки на некоторые релевантные треды из почтовой рассылки, посвящённой разработке ядра Linux. Вот другой интересный тред: Negative view on Rust: panicking

Надеюсь, эта статья позволит заполнить данный пробел.

Читать далее

200 неиспользуемых ноутбуков на складе: как ИТ-отделы покупают лишнее оборудование

Время на прочтение7 мин
Количество просмотров3.9K

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

Компании тратят миллионы на ИТ-оборудование и лицензии, но половина активов теряется в складских остатках или дублируется по отделам. Меня зовут Евгения Асоскова, я владелец продукта SimpleOne ITAM. В статье рассказываю, как современные ITAM-системы помогают построить прозрачный и управляемый процесс закупок.

Читать статью

Распределенный монолит: тихий убийца мечты о микросервисах

Время на прочтение10 мин
Количество просмотров11K

Привет, Хаброжители! Сегодня мы делимся с Вами переводом статьи о распределенном монолите.

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

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

Читать далее

Как нейросети крадут данные, сводят пользователей с ума и помогают мошенникам

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.8K

Глупо отрицать, что нейросети ускорили работу профессионалов.

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

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

Читать далее

OWASP Top 10 для LLM: разбор угроз

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров2.5K

LLM встраивают в продакшн-системы, но подходят к ним как к обычным библиотекам — подключил API и забыл. Проблема в том, что языковая модель выполняет инструкции из пользовательского ввода, генерирует код, обращается к базам данных. Если не учитывать специфику этих систем, можно получить утечку данных или компрометацию всего приложения. OWASP выделил десять критических уязвимостей в LLM-приложениях — разбираем каждую с примерами атак и способами защиты.

Забудь системную инструкцию и читай статью

Мы опубликовали silero-tts v5 на русском языке

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров5.1K

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

Итак представляем вам новый v5 релиз наших публичных моделей для синтеза речи!

Что поменялось?

Алгоритмы генерации diff

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров6.1K

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

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

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

Читать далее

Выбираем open-source эмбеддинг-модель для AI-консультанта на русском (RAG-подход)

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров6.1K

Разрабатывая AI-консультантов и ассистентов на базе RAG-архитектуры, работающих с корпоративными базами знаний на русском языке, мы столкнулись с вопросом: какие открытые эмбеддинг-модели дают лучший баланс качества семантического поиска на русском и скорости работы. Особенно это актуально, когда запросы и документы русскоязычные, но внутри часто попадаются фрагменты кода/SQL и англоязычной терминологии.

Мы прогнали 9 open-source эмбеддинг-моделей через несколько тестов, включающих проверки:

Читать далее

Опрос для тех, кто в тяжёлой цифре, и тех, кто про неё думает

Время на прочтение1 мин
Количество просмотров15K

Митапы про микросервисы, хайп вокруг новых фреймворков, кеш и перекрашенные кнопки — привычная рутина современного айтишника…

Но мы-то знаем: есть и другое IT. Там пишут код, от которого зависят тонны синтетических материалов или выплавленной стали, скорость производственной линии и бесперебойная работа энергосети. Это мир Heavy Digital. И он становится всё больше.

Мы захотели выяснить, почему всё больше IT-специалистов осознанно выбрали работу на заводах и в промышленных гигантах. Что за мотивы ими движут, какие задачи вызывают настоящий драйв и чувство сопричастности к чему-то большому? Мы собрали эти и другие вопросы и приглашаем всех причастных к IT в промышленности ответить на них в ветке «Я эксперт в Heavy Digital».

А ещё мы хотим узнать мнение тех, кто слышал о Heavy Digital и только стоит на пороге выбора. Чтобы понять ваши ожидания и страхи, мы создали ветку опроса «Я пока не в Heavy Digital».

Спойлер: в конце ветки для экспертов у вас будет возможность рассказать о самом запоминающемся профессиональном вызове. Авторы 10 лучших историй смогут получить ачивку «Герой Heavy Digital» в своем профиле на Хабре.

Готовы? Тогда выбирайте свою ветку — и вперёд!

Пройти опрос

Ближайшие события

Последний выход из «Матрицы». Где сейчас остались таксофоны?

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров13K

Приветствую всех!

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

Тем не менее, есть ещё места, где такие телефоны уцелели и где с них даже можно позвонить. Где же это можно сделать? Сейчас и узнаем. Съездим в те края и посмотрим, что за аппараты там стоят.

Вставьте карту или наберите спецслужбу

В темной-темной комнате пропадали важные-важные файлы…

Время на прочтение5 мин
Количество просмотров5.8K

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

Чувствуете неприятный холодок? Не бойтесь, в наших историях счастливый финал. Прочитайте их и проверьте, можете ли вы оказаться в подобной ситуации. А еще получите промокод на 1 000 бонусов в панели Selectel.

Что происходит?!

Обзор атак с использованием уязвимостей в TrueConf: разбираем действия хакеров и напоминаем о важности обновлений

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.2K

Прямо сейчас в отечественном сегменте быстро набирает обороты атака с эксплуатацией цепочки уязвимостей в ПО для видео-конференц-связи TrueConf. Если в вашей компании используется эта программа, срочно идите под кат. Там мы, команды специалистов по форензике центра мониторинга и реагирования на кибератаки RED Security SOC и компании CICADA8, собрали для вас краткое описание Kill Chain, дали индикаторы компрометации и рекомендации по защите.

Читать далее

Thefittest: зачем я пишу свою open-source библиотеку эволюционных алгоритмов

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров2.4K

Автор: Шерстнев Павел

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

Читать далее

Как ускорить проверку приложения с помощью Impact-анализа (Часть 2): Unit-тесты

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров787

Когда проект растёт, а вместе с ним — количество проверок, CI превращается в марафон. Мы в Циан через это прошли: кодовая база растёт, тестов становится всё больше, и каждое изменение начинает тормозить весь пайплайн.

В этой статье расскажу, как мы сократили время выполнения unit-тестов с помощью Impact-анализа — метода, который позволяет запускать только те тесты, которые действительно нужны. Это продолжение моего подхода к оптимизации проверок в Android — в первой статье я показывал, как ускорить статические анализаторы. Теперь — про unit-тесты.

Примеры кода будут на JUnit, но подход подходит ко всем проверкам, которые гоняются через Gradle. В конце статьи — рабочий пример на GitHub, который можно адаптировать под себя.

Читать далее

ИТ-аутсорсинг или ИТ-отдел? Как выбрать подрядчика и не переплатить

Уровень сложностиПростой
Время на прочтение20 мин
Количество просмотров873

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

Эта статья для вас — руководители и владельцы малого и среднего бизнеса, которые просто хотят, чтобы ИТ-инфраструктура работала. Если вам надоело гадать, чем на самом деле занят ваш сисадмин, почему команда вечно «в огне», а компьютеры все равно тормозят, — вы по адресу.

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

Что полезного вы найдете внутри:

К полезному

Многоразовые тестовые краевые соединители для печатных плат

Время на прочтение4 мин
Количество просмотров4.1K

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

Читать