Pull to refresh
33
ionicman@ionicman

User

0,1
Rating
12
Subscribers
Send message

Скажи yay -S say

Level of difficultyMedium
Reading time8 min
Reach and readers19K

Статья содержит описание работы утилиты для видео звонков из командной строки say. Рассказывается о том как всё устроено под капотом, как оптимизированно и почему всё работает так быстро с минимальным размером памяти и нагрузки на CPU.
Так же небольшой обзор утилиты see для просмотра фильмов опять же в окне терминала.

Читать далее

Lord of the Prints: Filament Fellowship. Путешествие в мир филаментов для FDM-печати

Level of difficultyEasy
Reading time12 min
Reach and readers15K

Привет, Хабр! Это снова Лера из Selectel. В прошлой статье я рассказала о двух технологиях в 3D-печати. В комментариях попросили сделать разбор материалов — и вот он. Сегодня продолжим заниматься извращениями под видом технических текстов. Все сравнения и оценочные суждения — исключительно личное мнение. Экспертов в FDM, гуру печати, а также любителей активных обсуждений прошу принять приглашение на чашечку чая в комментариях, посплетничаем там вместе.

Шорткат под кат

Собираем Linux, который весит меньше, чем мем с котиком, ну или почти…

Level of difficultyMedium
Reading time13 min
Reach and readers36K

Мне всегда было интересно, насколько минимальным может быть Linux.

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

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

Зачем вообще нужно создавать такие сборки Linux?

Установил готовый дистрибутив или загрузился в Live — работай и изучай. Но такой подход не даёт настоящей уверенности в знаниях. Представьте: водитель и шофёр. Водитель просто ездит. Шофёр знает устройство автомобиля и может его починить.

Современные автомобили сложны — починить всё самому уже нельзя. Но вы можете открыть капот, измерить уровень масла, заменить колесо в случае прокола, установить винт для буксировочного троса и т. д. Так же и с Linux: коммерческий дистрибутив вы вряд ли соберёте, но на одну ступеньку вверх по лестнице профессионализма подниметесь.

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

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

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

Всем, кого заинтересовало, добро пожаловать под кат.

Читать далее

Секреты Apache Kafka API: обработка сообщений без потерь и дублей

Level of difficultyMedium
Reading time9 min
Reach and readers16K

Меня зовут Андрей Серебрянский, и я люблю Apache Kafka. И гарантии доставки exactly once. И рассказывать обо всём этом на конференциях. Пять лет я строил платформы потоковой обработки данных в финтехе, а теперь вместе с командой работаю над YDB Topics: частью YDB (СУБД Яндекса), которая заменяет Apache Kafka в роли брокера сообщений. СУБД Яндекса уже некоторое время поддерживает Apache Kafka API. Недавно мы расширили этот API, добавив поддержку Kafka-транзакций.

Но наличия транзакций в брокере сообщений недостаточно для получения гарантий exactly once. Чтобы неудачно зависший или перезагрузившийся сервер не привёл к дублированию или потере сообщений, нужно хорошо понимать, как именно работают транзакции в брокерах сообщений вообще и в Apache Kafka в частности.

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

Читать далее

Chrome, Xfce и очень страшное кино

Level of difficultyMedium
Reading time8 min
Reach and readers19K

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

Читать далее

Роевой интеллект: как 15 строк кода заменяют централизованное управление дронами

Reading time5 min
Reach and readers11K

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

*Код и симуляция: Python 3.8+, matplotlib, numpy

Проблема централизованного управления

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

Читать далее

Архитектура слежки: Сравнительный анализ приватности веб-браузеров

Level of difficultyMedium
Reading time21 min
Reach and readers23K

Ваш браузер — это окно в интернет или двустороннее зеркало? По умолчанию многие из них спроектированы как настоящие терминалы для сбора данных.

Внутри статьи — детальный разбор телеметрии, оценка уровня шпионажа и, самое главное, исчерпывающее практическое руководство. Вы узнаете, как превратить Firefox в крепость с помощью about:config и настроить AdNauseam для тотальной блокировки слежки. Пора вернуть контроль над своей приватностью.

Читать анализ и руководство

Рецензия на книгу «Основы JetPack Compose: Разработка приложений для Android»

Level of difficultyEasy
Reading time7 min
Reach and readers8.9K

За последние несколько лет Jetpack Compose стал не просто новым способом создания интерфейсов под Android, а фактически основным инструментом UI-разработки. Google активно развивает Compose как декларативный фреймворк, заменяющий устаревший XML-подход, а экосистема вокруг него — от Material Design 3 до Compose Multiplatform — превратилась в полноценную платформу для современной мобильной разработки. Теперь учебник по Jetpack Compose уровня монографии (около 700 стр.) доступен на русском языке. Перевод книги по версии 1.6 — удобная отправная точка для тех, кто делает первые шаги или развивает компетенции в Compose-разработке.

Читать далее

Введение в Xray

Level of difficultyMedium
Reading time15 min
Reach and readers32K

Документ для тех, кто совсем не знает, что такое Vless, Xray и прочие штуки, связанные с «ВПН», но кому это нужно для планирования организации доступа через данные инструменты. Или если кому-то просто интересен принцип работы «на пальцах».

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

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

Читать далее

Продолжаем вкатываться в Go — таблица компетенций. Что ты должен знать на джуна/мидла?

Level of difficultyEasy
Reading time1 min
Reach and readers14K

Всем привет!

Не так давно я выкладывал RoadMap для самостоятельного изучения Go. Но во время обучения всегда встаёт важный вопрос: «А что учить дальше и на каком я уровне?».

Чтобы закрыть и его, я подготовил логичное продолжение — таблицу с вопросами и темами для самопроверки по грейдам (Junior, Middle, Senior).

Читать далее

Паттерны ООП, так не издевались даже… Структурные шаблоны с примерами на Java

Level of difficultyMedium
Reading time15 min
Reach and readers19K

Привет! Меня зовут Бромбин Андрей. В этой статье разберём структурные паттерны ООП. Используя примеры на Java и простые метафоры, поймём природу шаблонов: как они работают, зачем нужны и чего требуют от нас взамен. Почему дизайн называют удачным при использовании паттернов по назначению, и почему так бывает не всегда.

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

Шаблонизироваться

Веб. К черту фреймворки! Пишем свой starter-kit с роутером и сторами. Часть 2

Level of difficultyHard
Reading time15 min
Reach and readers7.3K

Пробуем собрать свой минималистичный starter-kit.

Туториал из трех частей.

В предыдущей части мы реализовали причудливый конфиг на webpack + собственный роутинг.

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

В следующей рассмотрим работу с web-компонентами.

Читать далее

Kubernetes на пальцах: самое простое объяснение, что это такое

Reading time7 min
Reach and readers53K

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

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

Читать далее

Что такое дескрипторы в Python и почему вам следует о них знать

Level of difficultyMedium
Reading time13 min
Reach and readers20K

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

Читать далее

Pytest. Гайд для тех, кто ни разу про него не слышал

Level of difficultyEasy
Reading time24 min
Reach and readers35K

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

Всем интересующимся — добро пожаловать под кат!

Читать далее

Техническое руководство по реализации цифро-аналогового двухрежимного модуля рации DMR818S для системной интеграции

Level of difficultyMedium
Reading time14 min
Reach and readers11K

DMR818S — это высокоинтегрированный радиочастотный приемопередающий модуль, в который встроены микроконтроллер (MCU), основной чип цифровой рации и радиочастотный усилитель мощности (PA). Он поддерживает как цифровой режим связи DMR, так и традиционный аналоговый. Серия в основном состоит из двух основных моделей: стандартной версии DMR818S (номинальная мощность 2 Вт) и версии высокой мощности DMR818S-5W (номинальная мощность 5 Вт). Обе модели совместимы по распиновке и физическим размерам корпуса. Эта особенность позволяет поддерживать варианты продуктов с разным уровнем мощности за счет унифицированной конструкции печатной платы, что упрощает разработку и управление производством аппаратных платформ.

Читать далее

Почему E = mc²: подробное объяснение с минимумом формул и максимумом смысла

Level of difficultyEasy
Reading time25 min
Reach and readers117K

28 сентября 2025 года празднуется 80-летие атомной промышленности. А ещё в 2025-м году исполняется 120 лет, как Эйнштейн вывел формулу эквивалентности массы и энергии (в контексте его теории, не отрицая вклада других исследователей - мы поговорим и про них). Представляю вам текстовое изложение моей лекции, посвящённой этим событиям. Я не физик, но специализируюсь в теории и истории энергии и энергетики, поэтому не могу пройти мимо истории и смысла самой знаменитой формулы. Я попытался дать наиболее простое и в то же время полное объяснение этой формулы, с позиции современных знаний о физических явлениях. Я искал подобные объяснения во многих источниках, но либо натыкался на лес формул без пояснения их смысла, либо на что-то простенькое и поверхностное. Итак, [еще одно] объяснение смысла E=mc^2 . Углубленные знания в физике и математике не требуются. Критика и дополнения приветствуются!

Читать далее

The Goddess's Will — или почему никто не делает видеоигры в стиле пререндеренного 3D, а мы делаем одну такую

Level of difficultyEasy
Reading time15 min
Reach and readers67K

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

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

До сего момента мы нигде не публиковались, нигде не были замечены, но пришло время сорвать покровы: с чего всё началось и к чему в итоге пришло, я расскажу в этой объёмной статье.

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

Читать далее

Как Borland «профукали все полимеры»

Level of difficultyEasy
Reading time17 min
Reach and readers137K

Первая встреча с Turbo Pascal

Начать стоит с самого начала, когда я впервые увидел Turbo Pascal 5.0. Тогда для меня это было что‑то на грани чуда.

Ведь как в те времена делалось «в норме»:

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

SteosMorphy: опенсорс замена давно умершему PyMorphy2

Level of difficultyMedium
Reading time6 min
Reach and readers7.6K

PyMorphy2 — самая популярная библиотека для обработки слов в русском языке. Однако последний коммит в репозиторий этой библиотеки был сделан более 5 лет назад, а её установка на Python версии 3.11+ вызывает трудности, что делает использование данной библиотеки в нынешнее время максимально затруднительным.

Предлагаю рассмотреть новую Open Source библиотеку SteosMorphy, которая является аналогом PyMorphy, но делает всё быстрее и круче!

Ознакомиться

Information

Rating
3,765-th
Registered
Activity