Как стать автором
Обновить

Разработка

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

В поисках контроллера вентиляторов

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

Шел 2022 год курс валют хорош и я решил обновил свой ПК. Собрал топовое i9 + 3080Ti (мне для работы :-)). Для хорошего охлаждения было установлено 9 вентиляторов. И все было бы хорошо если бы в небольшой квартире по вечерам/ночам гул вентиляторов начинал мешать семье.

Было принято решение собрать кастомное СЖО. Была собрана система на 2х трехсекционных радиаторах, количество вентиляторов уменьшилось до 6, но как оказалось зря, выдувать горячий воздух из корпуса все так же нужно и количество вентиляторов вернулось снова к 9, хотя и обороты стали меньше и стало тише.

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

Читать далее

Как не облажаться с типами данных в PostgreSQL

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

Недавно вышла отличная книга PostgreSQL Mistakes and How to Avoid Them от Jimmy Angelakos — системного архитектора, практика и давнего участника сообщества PostgreSQL. Книга подробно разбирает распространённые ошибки, с которыми сталкиваются разработчики и администраторы при работе с PostgreSQL, и предлагает практичные решения: от тонкостей конфигурации и миграции до антипаттернов в SQL и выбора типов данных.

Я перевёл одну из ключевых глав этой книги — про неправильное использование типов данных. В ней подробно объясняется, почему, например:

timestamp without time zone может ломать логику расчёта интервалов;

money — это не то, чем кажется (и почему он опасен);

char(n) и varchar(n) не дают ожидаемой экономии и даже вредны;

serial — это прошлый век, а identity — настоящее.

Глава будет полезна всем, кто работает с PostgreSQL в проде — особенно backend-разработчикам, независимо от языка и фреймворка. Если вы проектируете схемы БД, пишете SQL-запросы или просто хотите избежать неприятных грабель — стоит прочитать.

Читать далее

NoDPI4Android. Решаем проблему «деградации» YouTube теперь и на Android

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

Салют, Хабр! На связи снова я, Aragorn, со своим проектом по терроризированию Роскомпозора. В прошлый раз я рассказывал о NoDPI - утилите для "раздеградирования" YouTube и установил личный рекорд - 400 звезд на GitHub и блокировка статьи РКН через три дня после публикации.

Многие мои знакомые и люди в комментариях просили сделать версию под Android и Android TV. Я не очень дружу с Джавой и с Джавой под андроид в особенности, и поэтому такая перспектива меня не очень прельщала, но у меня был опыт написания android-приложений на python и kivy, который я и решил применить. После нескольких дней (и ночей) напряженного труда и танцев с бубном, мне наконец удалось создать NoDPI for Android, который практически не имеет аналогов. Именно о нем я и хочу сегодня рассказать. Надеюсь, статья будет вам полезна и интересна. Поехали!

Читать далее

Гит, предпосылки его появления и современное использование в веб-разработке

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

Сейчас сложно представить мир разработки программного обеспечения без git – распределенной системы контроля версий. Хотя еще 10 лет назад во многих компаниях использовались другие инструменты: CVS или SVN. Бывали даже такие команды, в которых и вовсе не велось версионирование кода. А 20 лет назад git только-только был создан Линусом Торвальдсом и начал распространяться в среде самых продвинутых разработчиков того времени — участниках опенсорс комьюнити вокруг ядра линукса.

В этой статье мы рассмотрим предпосылки появления git и его современное использование.

Первый коммит гите был сделан 7 апреля 2005 года с описанием: Initial revision of "git", the information manager from hell. В английском языке слово гит означает «неприятный человек», и хотя история благодушно умалчивает, почему Линус назвал свой инструмент именно так, мы можем быть уверены, что в этом названии отражена та сложная обстановка, в которой оказались создатели ядра линукса в начале 21 века. Дело в том, что в начале разработки ядра Linux использовался проприетарный (то есть принадлежащий конкретной компании и не являющийся свободным) инструмент управления версиями под названием BitKeeper. Однако в 2005 году возник конфликт между разработчиками Linux и компанией-разработчиком BitKeeper, в результате которого была отозвана бесплатная лицензия разработчиков ядра.

Читать далее

Чем живут создатели ИИ? ML’щики, приоткройте чёрный ящик, расскажите о себе в нашем опросе

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

Пока весь мир обсуждает революцию ИИ, те, кто её творят, остаются в тени и просто делают свою работу. Именно им, ML- и DS-специалистам, человечество обязано прорывам в технологиях. Но какие они на работе и в жизни, чем интересуются и главное — что думают об ИИ, который создают? Мы решили расспросить их самих, чтобы составить честный портрет современного ML-щика. Если вы занимаетесь ML и Data Science, добавьте свои штрихи этому портрету — пройдите наш небольшой опрос. А мы потом покажем вам — и всей аудитории Хабра — получившуюся картину.

Пройти опрос

Security Week 2527: серьезная уязвимость в популярных Bluetooth-наушниках

Время на прочтение5 мин
Количество просмотров1.5K
26 июня исследователи из немецкой компании ERNW сообщили об обнаружении серьезной уязвимости в Bluetooth-модулях тайваньской компании Airoha Technology. Эта компания производит SoC, обеспечивающие передачу данных по протоколу Bluetooth. Такие чипы используются во множестве беспроводных TWS-наушников, включая популярные модели от Sony, JBL и Marshall. Специалисты ERNW пока не публикуют технические детали уязвимостей, чтобы дать время производителям наушников на подготовку патчей. Но понятен главный источник проблемы: проприетарный протокол коммуникации, реализованный в чипах Airoha и доступный без какой-либо авторизации.


Протокол (вполне вероятно, использующийся на этапе разработки и отладки) обеспечивает широчайшие возможности по контролю над устройством, включая чтение и запись в оперативную память устройства, а также модификацию прошивки. Коммуникация возможна с любых устройств (не только привязанных к наушникам) в зоне радиоприема — по протоколу BLE GATT и стандартному BD/EDR. Всего по итогам исследования ERNW были идентифицированы три уязвимости с идентификаторами CVE-2025-20700, CVE-2025-20701 и CVE-2025-20702, но речь идет об одной общей проблеме.
Читать дальше →

CLL в ISPA: Семантические действия просто и мощно

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

CLL в ISPA — переносимый язык семантических действий для генераторов парсеров. Объявление переменных, условий и циклов, генерация AST и кода на C++ без привязки к языку парсера. Пример, разбор и сравнение с ANTLR, Bison.

Читать далее

Как я проектирую и разрабатываю реальные расширения для Python на Rust

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

Вы, вероятно, уже видели немало статей с заголовками вроде «Python, Rust — производительность, бла-бла-бла…». Печально, но почти все эти статьи демонстрируют лишь самые простые примеры уровня «hello world». В отличие от них, в этой статье я хочу поделиться тем, как я проектирую крупные расширения для реальных проектов и почему принимаю при этом те или иные решения.
Читать дальше →

Тени в эфире: выявление технической слежки при помощи Bluetooth-трекеров

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

Всем привет! Сегодня разбираем тему, интересную любому цифровому детективу и просто каждому, у кого есть причины опасаться слежки. А именно обнаружение Bluetooth-трекеров. Какой софт лучше всего подойдёт для их выявления? Как не пропустить цифровой хвост, фильтровать лишний шум и правильно анализировать контекст? И где заканчивается здравая цифровая гигиена и начинается паранойя? Обо всём этом и других ключевых моментах обнаружения BLE-слежки читайте под катом!

Читать далее

Flutter Дайджест – Июнь 2025

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

Привет, Flutter-разработчики! 👋

Я автор телеграм-канал FlutterPulse! Месяц выдался жарким — и не только из-за погоды ☀️ Мы запустили новую рубрику, пересобрали формат пакетов и собрали для вас крутую подборку новостей, гайдов и видео. Поехали! 👇

Читать далее

Мой худший образец полезного кода

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

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

Читать далее

Полное руководство по всем видам тестирования

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

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

Читать далее

POLLUX: оценка генеративных способностей моделей для русского языка

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

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

Читать далее

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

Радость создания хобби-программ

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

Мне очень нравится знаменитая цитата Ричарда Фейнмана:

«То, что я не могу создать, я не понимаю»

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

Сегодня, в 2025 году, красота и ремесло написания ПО подвергаются разрушению. ИИ угрожает тем, что заменит нас (или, по крайней мере, заберёт все самые приятные аспекты нашего ремесла), а разработка ПО становится всё более стандартизированной, выверенной, упакованной и индустриализированной. Разработке программного обеспечения нужно больше простых удовольствий. Я выяснил, что создание хобби-программ — отличный способ снова напомнить себе, почему вообще я начал работать с компьютерами.

Читать далее

SSH для дата сайентиста: обзор для начинающих

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

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

Читать далее

GPU Server and AI Infrastructure: тренды архитектуры 2030

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

Мы в OpenYard внимательно следим за тем, как развивается инфраструктура для искусственного интеллекта — от железа до сетей и архитектуры дата-центров. Причём это не просто рабочая необходимость, а и то, что нам самим по-настоящему интересно. В эту статью попали материалы, которые мы собираем и анализируем в процессе исследований для наших новых продуктов. Здесь собраны ключевые тренды, которые уже начинают влиять на то, как мы будем строить свою инфраструктуру и запускать модели ИИ в ближайшие 5–7 лет.

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

Читать далее

Переоценка API-стратегий: почему компании мигрируют с GraphQL на REST

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

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

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

Итак, почему компании, однажды выбравшие GraphQL, решают изменить свой курс и вернуться к стандартному способу реализации систем? Ответ на этот вопрос лежит на пересечении технических возможностей, бизнес-потребностей и экономических соображений. Давайте разберёмся в этом подробнее.

Читать далее

(BRS) — CLI-набор для сетевой разведки и аудита безопасности

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

Мы в EasyProTech часто работаем с инфраструктурой, в которой нет места сложным обёрткам, тяжёлым тулзетам и веб-интерфейсам. Нужно просто:

Читать далее

«Щит» или «дуршлаг»? ML упрощает жизнь разработчиков, но способен проделать новые дыры в безопасности

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

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

Меня зовут Павел Попов, я руководитель группы инфраструктурной безопасности в Positive Technologies. Расскажу, как сами применяем ИИ и каких результатов нам удалось достичь с внедрением ML-моделей в MaxPatrol VM. А также попробуем ответить на вопрос, заменит ли ИИ разработчиков и есть ли вероятность, что мы все останемся без работы. Если вам тоже интересно, как технологии меняют ИБ-ландшафт и какие решения уже работают сегодня — добро пожаловать.

Читать далее

Недельный геймдев: #232 — 29 июня, 2025

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

Из новостей: Dune Awakening достигла миллиона проданных копий, Peak разошлась тиражом в миллион копий за 6 дней, Крис Авеллон работает над новой RPG, Riot закрывает Hypixel Studios и отменяет Hytale после десятилетия разработки.

Из интересностей: цифровое воровство и справедливость, как мужик пошёл искать Лихо Одноглазое, почему вы откладываете битву с финальным боссом, тапатульки в Майке.

Читать далее